我的程式裡面有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