Android开发之设置APP全局字体
2016-09-16 00:47
525 查看
原创作品,转载请注明:Android开发之设置APP全局字体
今天带来一篇和字体有关的:设置APP全局字体。
在开发的过程中可能有需求是使用某种要求的字体而不是默认字体,在使用少的情况下,我们可以选择直接设置或者自定义View,用到的时候使用自定义的TextView。如:
这样子写的话每次要不能用系统的TextView而要用这个自定义TextView,很麻烦。
如果我们想要应用的所有字体都使用给定的字体呢?这时候就要设置全局字体了:
一、在主模块build.gradle中的dependencies里面加入下面这行代码并同步;
二、将准备好的字体库文件放在assets/font目录下;
三、在Application的onCreate()方法里面写上:
原创作品,转载请注明:Android开发之设置APP全局字体
今天带来一篇和字体有关的:设置APP全局字体。
在开发的过程中可能有需求是使用某种要求的字体而不是默认字体,在使用少的情况下,我们可以选择直接设置或者自定义View,用到的时候使用自定义的TextView。如:
public class CustomFontTextView extends TextView{ public CustomFontTextView(Context context) { this(context, null); } public CustomFontTextView(Context context, AttributeSet attrs) { this(context, attrs, 0); } public CustomFontTextView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(context); } //使用自定义的字体库 private void init(Context context){ AssetManager assetManager=context.getAssets(); Typeface typeface=Typeface.createFromAsset(assetManager, "font/huawenxihei.ttf"); setTypeface(typeface); } }
这样子写的话每次要不能用系统的TextView而要用这个自定义TextView,很麻烦。
如果我们想要应用的所有字体都使用给定的字体呢?这时候就要设置全局字体了:
一、在主模块build.gradle中的dependencies里面加入下面这行代码并同步;
testCompile 'junit:junit:4.12'//自定义字体库
二、将准备好的字体库文件放在assets/font目录下;
三、在Application的onCreate()方法里面写上:
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder() .setDefaultFontPath("font/huawenxihei.ttf") .setFontAttrId(R.attr.fontPath) .build());四、创建Activity的基类,重写attachBaseContext(Context newBase)方法,我习惯用一个抽象类BaseActivity,需要的Activity都直接或间接继承这个类,这样的好处我就不多说了;
@Override protected void attachBaseContext(Context newBase) { super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase)); }五、让自己的Activity继承BaseActivity就行了,写一个普通的TextView运行一下就会发现字体已经是想要的字体了。
原创作品,转载请注明:Android开发之设置APP全局字体
相关文章推荐
- android 开发 app全局字体的设置
- 设置Android app的字体不随系统全局字体大小的变动而变动
- 设置Android app的字体不随系统全局字体大小的变动而变动
- 转:设置Android app的字体不随系统全局字体大小的变动而变动
- Android app全局字体设置
- Android项目实战(二十三):仿QQ设置App全局字体大小
- Android app全局字体设置
- Android APP的字体设置
- Android APP的字体设置
- 如何设置android app 的字体大小不受系统字体大小改变的影响
- Android framework开发全局系统属性设置与获取
- Android开发在string.xml文件中设置部分字体颜色大小
- android app使用v7 appcompat library设置全局样式
- Android开发在string.xml文件中设置部分字体颜色大小
- ios app全局字体设置
- android app 如何设置自己喜欢的字体
- android开发之修改全局自定义字体
- Android开发之全局异常捕获完美闪退APP专题
- [Android开发] java代码设置字体的背景颜色
- android开发中设置字体