我正在创建一个自定义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/