以编程方式获取增量布局 ID
Getting an incremental layout id programatically
我有一组这样的文本视图..
TextView d1,d2,d3,d4,d5,d6,d7,d8.....etc
我怎样才能像这样通过增加 d 后面的数字来像这样在循环中设置文本
for(int i=1;i<=8;++i)
{
d+i.setText("foo");
}
你可以像下面那样做。
创建 ArrayList<TextView>
并将所有 TextView
添加到列表中。
然后你必须用 List
size
.
做循环
您可以将文本更新为 TextView
。
有了这个:
for(int i = 1; i <= 8; i++) {
int id = getResources().getIdentifier("d" + i, "id", getPackageName());
TextView tv = (TextView) findViewById(id);
tv.setText("foo");
}
方法 getIdentifier()
通过其 id "name".
获取 View
的整数 id
如果此代码不在 activity 内,您必须为方法 getResources()
和 getPackageName()
提供有效的 Context
,例如:
context.getResources()
和 context.getPackageName()
.
我有一组这样的文本视图..
TextView d1,d2,d3,d4,d5,d6,d7,d8.....etc
我怎样才能像这样通过增加 d 后面的数字来像这样在循环中设置文本
for(int i=1;i<=8;++i)
{
d+i.setText("foo");
}
你可以像下面那样做。
创建 ArrayList<TextView>
并将所有 TextView
添加到列表中。
然后你必须用 List
size
.
您可以将文本更新为 TextView
。
有了这个:
for(int i = 1; i <= 8; i++) {
int id = getResources().getIdentifier("d" + i, "id", getPackageName());
TextView tv = (TextView) findViewById(id);
tv.setText("foo");
}
方法 getIdentifier()
通过其 id "name".
获取 View
的整数 id
如果此代码不在 activity 内,您必须为方法 getResources()
和 getPackageName()
提供有效的 Context
,例如:
context.getResources()
和 context.getPackageName()
.