我创建了一个用于更改字体的tablayout类。 不幸的是,字体不会改变。
问题出在哪里?
资产文件夹路径字体\
public class Tablayout_customfonts extends TabLayout {
private Typeface typeface;
public Tablayout_customfonts(Context context) {
super(context);
init();
}
public Tablayout_customfonts(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public Tablayout_customfonts(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
private void init() {
typeface = Typeface.createFromAsset(getContext().getAssets(), "font/BYekan.ttf"); }
@Override
public void addTab(Tab tab) {
super.addTab(tab);
ViewGroup mainView = (ViewGroup) getChildAt(0);
ViewGroup tabView = (ViewGroup) mainView.getChildAt(tab.getPosition());
int tabChildCount = tabView.getChildCount();
for (int i = 0; i < tabChildCount; i++) {
View tabViewChild = tabView.getChildAt(i);
if (tabViewChild instanceof TextView) {
((TextView) tabViewChild).setTypeface(typeface, Typeface.NORMAL);
}
}
}
}