AppCompatEditText 自定义字体无法正常工作

问题描述

我正在尝试创建一个新的自定义 AppCompatEditText,同时从 AppCompatEditText 扩展,当我更改类中的字体并在创建视图时在 XML 中使用该类时,字体将保持与默认值相同,可以有人请告诉我这里有什么问题吗?

public class MAppEditText extends AppCompatEditText {

public MAppEditText(@NonNull @NotNull Context context) {
    super(context);
    init();
}

public MAppEditText(@NonNull @NotNull Context context,@Nullable AttributeSet attrs) {
    super(context,attrs);
    init();
}

public MAppEditText(@NonNull @NotNull Context context,@Nullable AttributeSet attrs,int defStyleAttr) {
    super(context,attrs,defStyleAttr);
    init();
}

private void init() {
    Typeface tf;

    if (getTypeface().isBold()) {
        tf = Typeface.createFromAsset(getContext().getAssets(),"fonts/yekan_bold.ttf");
    } else {
        tf = Typeface.createFromAsset(getContext().getAssets(),"fonts/yekan_regular.ttf");
    }
    setTypeface(tf);
}

}

我也用这个方法制作了一个自定义的 AppCompatTextView,它工作得很好,但 AppCompatEditText 是不同的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)