覆盖多个视图的字体时的效率

时间:2014-01-31 19:00:27

标签: android performance fonts

有两种方法可以“全局”覆盖android中使用的字体。

创建一个扩展视图对象并设置类型face的类,即

public class TextViewRobotoRegular extends TextView {

    public TextViewRobotoRegular(Context context, AttributeSet attrs) {
        super(context, attrs);

        if (!isInEditMode()) {
            Typeface typeface = Typeface.createFromAsset(getContext().getAssets(), "fonts/Roboto-Regular.ttf");
            setTypeface(typeface);            
        }
    }
}

另一个是定义样式并在那里设置字体

<style name="CodeFont" parent="@android:style/TextAppearance.Medium">
    <item name="android:typeface">monospace</item>
</style>

所以我的问题是,哪个内存效率更高?

另外,无论如何在XML文件中引用assets/fonts/<fontname>.ttf文件?我试图让所有视图对象都具有相同的字体,但如果我决定更改字体,我希望它们都引用一个点。

0 个答案:

没有答案