我正在创建一个自定义TextView类MTextView。在构造函数内部,我想知道textview的样式属性的值,以便我可以根据样式是否设置为粗体来设置不同的字体。但是没有getStyle()函数吗?该怎么办?

    public class MTextView extends TextView{

    public MTextView(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
            if(style.equals(TypeFace.bold))  //how to get style?
                setTypeface(Typeface.createFromAsset(getContext().getAssets(),"rc.ttf"));
    }



    }

最佳答案

您可以从TextView的getTypeface()实例方法中获取textStyle。

int style = getTypeface().getStyle();

如果未指定textStyle(即您要支持普通的textStyle),则getTypeface()可以返回null。

在不为null的情况下,最好假定textStyle隐式设置为normal。

关于android - 如何获取TextView的样式属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15762025/

10-10 03:49