这是我的问题:
我希望能够在我的 android 应用程序中同时更改多个 TextView 的字体。
在 XML 文件中更改它似乎很复杂,扩展 TextView 类会带来内存问题(参见 here)。
所以我尝试更改 java 代码中的字体,就像那样:
Typeface robotoThin = Typeface.createFromAsset(getAssets(),"fonts/Roboto-Thin-webfont.ttf");
TextView index_slogan = ((TextView)findViewById(R.id.index_slogan));
index_slogan.setTypeface(robotoThin);
效果很好,但我宁愿使用 findViewsWithText
选择多个 Textview,但我不明白它是如何工作的...
一些帮助将不胜感激。
编辑:
好的,所以它没有用,因为它是从 API 级别 14 开始实现的,而我正在尝试 API 级别 10...
您知道查找多个 View 的其他函数吗?
最佳答案
1- 如何设置 Costume 字体,设置 Costume 字体的最佳方法是以编程方式进行,最好和更简单的方法是注册 public
static
Typeface
在你的 Api 或主类中,例如我有 Api.class
满足我制作的每件服装
添加
public static Typeface myfont;
然后当我在创建 Activity 时调用 Api.class
时设置字体类型
Api.myfont = Typeface.createFromAsset(getAssets(),"fonts/Roboto-Thin-webfont.ttf");
现在您可以为每个 TextView 或 Edittext 或任何其他 View 使用 Api.myfont
editText.setTypeface(Api.myfont);
myradio.setTypeface(Api.myfont);
mytextview.setTypeface(Api.myfont);
mycheckBox.setTypeface(Api.myfont);
2 - findViewsWithText()
将获取 View 的 has android:contentDescription="blabla"
关于android - 如何使用 findViewsWithText(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19814554/