我知道如何将自定义字体设置为TextView。但是如何通过theme / style / xml添加自定义字体
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="customfontforlistview" parent="@android:style/Widget.ListView">
<item name="android:textColor">#000000</item>
<item name="android:typeface">HOW_TO_CUSTOM_FONT</item>
</style>
</resources>
请为此提供解决方案。
答案 0 :(得分:3)
据我所知,没有一个好方法可以做到这一点。我知道的最好的选择是创建一个看起来像这样的简单子类:
public class CustomTextViewNormal extends TextView
{
public CustomTextViewNormal(Context context)
{
super(context);
init();
}
public CustomTextViewNormal(Context context, AttributeSet attrs)
{
super(context, attrs);
init();
}
public CustomTextViewNormal(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
init();
}
public void init()
{
Typeface tf = Typeface.createFromAsset(getContext().getAssets(),
"fonts/HelveticaNeue.ttf");
setTypeface(tf);
}
}
如果您这样做,您可以在xml布局中使用此自定义文本视图,并且您基本上具有与样式相同的功能,但是,不可否认,它有点笨拙。