我实现了自己的类,将android android.widget.Button
类扩展为在所有按钮中都使用了自定义字体。
为此,我重写了方法setTypeface
,如下所示:
public void setTypeface(Typeface tf, int style) {
if (!isInEditMode()) {
super.setTypeface(Fonts.get(style, getContext()));
}
}
这在我的应用支持的所有版本的android上都很好用,但在棒棒糖上除外。有人知道我为此做错了吗?
最佳答案
我想通了,我忘了覆盖方法setTypeface
的其他定义。所以我得到的最终工作代码是:
@Override
public void setTypeface(Typeface tf) {
if (!isInEditMode()) {
super.setTypeface(Fonts.get(getContext()));
}
}
@Override
public void setTypeface(Typeface tf, int style) {
if (!isInEditMode()) {
super.setTypeface(Fonts.get(style, getContext()));
}
}