Android:如何向主题/style/xml添加自定义字体

Android:如何向主题/style/xml添加自定义字体,android,fonts,Android,Fonts,我知道如何将自定义字体设置为文本视图。但是如何通过theme/style/xml添加自定义字体呢 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="customfontforlistview" parent="@android:style/Widget.ListView"> <item name="android:textColor">#000000

我知道如何将自定义字体设置为文本视图。但是如何通过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>

#000000
如何使用自定义字体

请提供一个解决方案。

据我所知,没有一个好的方法可以做到这一点。我所知道的最好的选择是创建一个简单的子类,它看起来像这样:

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布局中使用此自定义文本视图,并且基本上与样式具有相同的功能,尽管不可否认,这有点草率。

这不是一个否决票!回答正确。至少有一种方法不适用于此继承的textview:(