如何获取TextView的style属性

时间:2013-04-02 10:40:25

标签: android textview typeface

我正在创建一个Custom 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"));
    }



    }

1 个答案:

答案 0 :(得分:28)

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

int style = getTypeface().getStyle();

如果没有指定textStyle(即你想支持普通的textStyle),那么getTypeface()可以返回null。

如果它不为null,最好假设textStyle被隐式设置为normal。