Android 为具有相同ID的多个textview设置textsize
是否可以为具有相同ID的多个textview设置textsize?我有android:id:“@+id/lbl”?实际上,我根据文件夹值/dimen.xml设置了dpAndroid 为具有相同ID的多个textview设置textsize,android,fonts,textview,set,Android,Fonts,Textview,Set,是否可以为具有相同ID的多个textview设置textsize?我有android:id:“@+id/lbl”?实际上,我根据文件夹值/dimen.xml设置了dp TextView lbl=(TextView) findViewById(R.id.lbl); lbl.setTextSize(dp); 第一个textview仅获得此效果,但其余textview未获得此效果。让我知道如何解决这个问题。您需要单独完成,因为每个activty/fragment/adapter都有自己的布局(xml
TextView lbl=(TextView) findViewById(R.id.lbl);
lbl.setTextSize(dp);
第一个textview仅获得此效果,但其余textview未获得此效果。让我知道如何解决这个问题。您需要单独完成,因为每个activty/fragment/adapter都有自己的布局(xml)。在R.java中,它们有自己的唯一编号
android:textSize="24sp"
每次在XML中添加视图时,只需添加文本大小即可获得父视图的所有文本视图。然后在android平台中循环检查它们的id,每个视图必须有一个由视图的“android:id”属性标识的唯一id。虽然您可以使用相同的id定义多个视图,但android会首先声明,并将rest视图保留为没有id。 现在让我们举一个例子:
<TextView
android:id="@+id/response_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="27dp"
android:layout_toLeftOf="@+id/scan_format"
android:text="TextView" />
<TextView
android:id="@+id/response_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/response_text"
android:layout_marginBottom="74dp"
android:layout_toLeftOf="@+id/response_text"
android:text="Trepeattet" />
在R.java中,只有一个textview声明了它的id(这个十六进制id是在您第一次运行代码时由平台编译器自己创建的)
所以,尽管应用程序在编译时或运行时不会产生任何错误,但也不会对具有相同id的任何其他视图执行任何操作,除了第一个视图,因为只有一个引用属于第一个textview
根据帖子,这里是你可以做的:
视图ID是纯整数,因此您可以简单地拥有一个要更改的ID数组。例如:
int[] ids = { R.id.lbl1, R.id.lbl2, ... };
for (int id: ids) {
TextView lbl=(TextView) findViewById(id);
lbl.setTextSize(dp);
}
这将起作用。是的,我知道如何在布局中设置,但我练习从dimens加载值。xmlandroid:textSize=“@dimen/thround”
int[] ids = { R.id.lbl1, R.id.lbl2, ... };
for (int id: ids) {
TextView lbl=(TextView) findViewById(id);
lbl.setTextSize(dp);