android - 如何使用 findViewsWithText()

标签 android textview

这是我的问题:

我希望能够在我的 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/

相关文章:

android - 程序类型已经存在 : android. arch.core.R

java - 抽屉导航不显示但仍在打开

android - 尝试在自定义对象数组上使用 ParcelableArrayList 时发生 ClassCastException

android - 如何使用 "libsu"库(或 adb)在 Android Q 上安装拆分 APK 文件?

android - 将 setText 与有关当前时间的规则一起使用

android - 自定义 ttf 字体在 Android 4.4 KitKat 上的 TextView 中显示不正确

java - 安卓.content.res.Resources$NotFoundException : Resource ID #0x0 java exception

java - RadioButtonGroup 没有出现

android - LinearLayout 中的 TextView 不显示文本部分但显示图像正常

android - TextView Html格式