Android|Android 全局设置字体
说到这,我估计你心理已经有全新的解决方案了,那就是利用setFactory,相关代码如下(在BaseActivity中):
publicstaticTypeface typeface;
@Override
protected void onCreate(Bundle savedInstanceState){
if(typeface ==null)
{
typeface = Typeface.createFromAsset(getAssets(),"hwxk.ttf");
}
LayoutInflaterCompat.setFactory(LayoutInflater.from(this),newLayoutInflaterFactory(){
@Override
public View onCreateView(View parent, String name, Context context, AttributeSet attrs){
AppCompatDelegate delegate = getDelegate();
View view = delegate.createView(parent, name, context, attrs);
if(view!=null&& (viewinstanceofTextView))
{((TextView) view).setTypeface(typeface);
}
return view;
}});
super.onCreate(savedInstanceState);
【Android|Android 全局设置字体】setContentView(R.layout.activity_main); }
推荐阅读
- 第6.2章(设置属性)
- android第三方框架(五)ButterKnife
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- android|android studio中ndk的使用
- Android事件传递源码分析
- RxJava|RxJava 在Android项目中的使用(一)
- Android7.0|Android7.0 第三方应用无法访问私有库
- 深入理解|深入理解 Android 9.0 Crash 机制(二)
- android防止连续点击的简单实现(kotlin)