最简单的使用自定义字体的方法? - android

时间:2012-06-17 15:46:45

标签: android xml fonts typeface custom-font

我在Android应用程序中使用自定义字体的方式是使用以下代码

TextView txt = (TextView) findViewById(R.id.textView1);  
        Typeface font = Typeface.createFromAsset(getAssets(), "ABCD.TTF");  
        txt.setTypeface(font);

我已将ABCD.TTF存储在资产文件夹中..

和你的工作,没有任何问题..事情是我必须为每一个文本,按钮等添加上面的代码我... ...如果有很多文本和它真的是一个耗时的事情各种活动中的按钮:(

我需要的是另一种方法,这是最容易实现的方法..

就像使用一个不像上面那样重复的代码块来改变所有东西的字体..

否则在 xml

中执行此操作

或者有没有办法将我们的自定义字体添加到 normal,sans,serif,monospace 所在的内置字体中。

2 个答案:

答案 0 :(得分:1)

  

就像使用一个不像上面那样重复的代码块来改变所有东西的字体..

在各种StackOverflow答案中,有几种方法可以解决这个问题。这是迭代ViewGroup的子项并将Typeface应用于实现TextView的所有项: - https://stackoverflow.com/a/7580370/115145

  

否则在xml

中执行此操作

抱歉,这不受支持。

  

或者有没有办法将我们的自定义字体添加到内置字体中,其中存在normal,sans,serif,monospace。

抱歉,除非您构建自己的固件,否则不支持此功能。

答案 1 :(得分:0)

You can use simple EasyFonts third party library to set variety of custom font to your TextView. By using this library you should not have to worry about downloading and adding fonts into the assets/fonts folder. Also about Typeface object creation.

Simply:

TextView myTextView = (TextView)findViewById(R.id.myTextView);
myTextView.setTypeface(EasyFonts.robotoThin(this));