我正在尝试创建一个改变我应用字体的功能。
目的是创建一个函数,我在适配器的onCreate()
或getView()
末尾调用。
但是我的Style测试导致了崩溃,我不确定我是否理解得很好。 如果有人有想法,那就会受到欢迎。
编辑:下面的代码是正确的!
public static boolean recursiveFontSetting(View v){
if( v instanceof ViewGroup){
for(int i = 0;i<((ViewGroup) v).getChildCount();i++){
recursiveFontSetting(((ViewGroup) v).getChildAt(i));
}
return true;
} else if (v instanceof TextView){
TextView e = (TextView) v;
if(e.getTypeface()!=null && e.getTypeface().getStyle()==Typeface.BOLD){
e.setTypeface(Constants.fontBold, Typeface.NORMAL);
}else{
e.setTypeface(Constants.fontReg);
}
return true;
}
else if( v instanceof Button){
Button e = (Button) v;
if(e.getTypeface()!=null && e.getTypeface().getStyle()==Typeface.BOLD){
e.setTypeface(Constants.fontBold, Typeface.NORMAL);
}else{
e.setTypeface(Constants.fontReg);
}
return true;
}
return false;
}
谢谢!