2016-09-07 13 views
0

如何在xml布局中执行view.setId(123)将ID设置为布局中的数字

android:id="123"不起作用,并会android:id="@+id/123"其添加到文件的ID

编辑:我需要的ID设置为一个数字,因为我将它设置了很多的意见,我想以循环方式启动它们

+1

将它添加到IDs文件有什么问题? – tynn

+0

我这样做了很多意见,我想用循环启动它们 –

回答

1

看起来好像你正在做一些无意的事情。不可能像你想的那样做,但是有一个解决方法。

最简单的是通过使用XML TypeArray

<resources> 
    <array name="ids"> 
     <item>@id/id1</item> 
     <item>@id/id2</item> 
     ... 
    </array> 
</resources> 
TypedArray ta = getResources().obtainTypedArray(R.array.ids); 
for (int i = 0; i < ta.length(); i++) 
    findViewById(ta.getResourceId(i, 0); 
ta.recycle(); 

来定义这些ID

static final int[] IDS = {R.id.id1, R.id.id2, ...}; 

的阵列或不过还好考虑重构你的代码,不会有需要使用这个。