我的程式里面有13个Button,我想问可不可以用for的循环写出
button1=(Button)findViewById(R.id.button1);
.
.
.
button13=(Button)findViewById(R.id.button13);
给你们看一下我写的错误程式
我有去参考网络上的
button[] btn=new button[13]; //我太久没写JAVA有点忘记[]里是要写12还是13
for(int i=1;i<14;i++){
btn[i]=(Button)findViewById(R.id.btn[i]);
}
红字是eclipse出现的底线
前面的btn反而没有底线
我看有人用这种方法写setOnClickListener是可以的
是不是R.id.id名称 这里没办法用阵列?
因为eclipse的除错跟我说要加上btn这个ID
等号前面的就没出现错误
作者:
luoqr (.....)
2014-10-12 21:03:00groovy:R.id."button$i" , java:reflection?
作者:
roder (å°Šé‡ q( ̄︶ ̄)p 包容)
2014-10-12 21:05:00宣告阵列是"数量" 起始是从[0]开始 所以最后是n-1
作者:
ssccg (23)
2014-10-12 22:01:00id里又没有btn这个阵列,你要用名称要用reflection
作者:
HuangJC (吹笛牧童)
2014-10-12 22:54:00查过 reflection,无法想像怎么用;只知有动态生成 rtti对我来说,我会注意 button1~13 是不是连续 id
用getResources().getIdentifier()
作者:
HuangJC (吹笛牧童)
2014-10-12 22:55:00最好是,然后就以数字 forloop 去 loop 这个 id6334的解法好 :P