与整个项目共享嵌入字体的最佳实践

时间:2013-08-21 14:38:10

标签: android fonts typeface android-fonts

我想知道是否可以定义一个嵌入式字体用于TextView文件中的所有styles.xml

我理解并不是因为必须在每个元素上以编程方式设置嵌入字体。

我用来执行此操作的代码如下:

Typeface tf = Typeface.createFromAsset(getAssets(),"fonts/myfont.ttf");
TextView tv = (TextView) findViewById(R.id.myTextView);
tv.setTypeface(tf);

现在我想要它,如果我能够在ActivityApplication单例或任何持久的东西中一劳永逸地创建资源字体,那么我可以在每个{{ {1}}定义在我想要的每个元素上设置字体。

任何建议都将不胜感激!

[编辑] 任何关于毛泽东解决方案上/下方的评论都将非常受欢迎!

1 个答案:

答案 0 :(得分:1)

您可以声明包含typeFace的公共静态变量(在主活动中)并在onCreate方法中将其实例化。

public static Typeface tf;

@Override
protected void onCreate(Bundle savedInstanceState) {
    tf = Typeface.createFromAsset(this.getAssets(),"fonts/yourFont.ttf");
}