2011-11-15 63 views
0

我正試圖創建一個簡單的應用程序,其中有30個按鈕,我需要初始化他們的文本字段。 我創造了這個數組的按鈕:設置按鈕數組中的文本

Button[][] buttons_arr = new Button[10][3]; 

要更改每個按鈕的文本我所做的:

for(i=0..9) //psaudo 
    for (j=0..29) //psaudo 
    buttons_arr[i][j].setText(toString(some_int)); 

最後一行會引起一些問題。爲什麼和我能做些什麼來解決這個問題?

回答

1

你實際上是在300倍而不是30倍

+0

正確的,弄糊塗了那裏一秒。 – user1047069

1

循環嘗試這樣

for(i=0..9) //psaudo 
     for (j=0..2) //psaudo 
     buttons_arr[i][j].setText(""+some_int); 
0

我還沒有嘗試過二維數組。但是我對類似問題的經驗似乎是,buttons_arr [i] [j]仍然未初始化。需要創建一個新的按鈕:

buttons_arr[1][1] = new Button(); 

buttons_arr [1] [1] =(按鈕)findViewById(R.id.buttonAtPosition1_1);

+0

我有這樣的功能: \t公共無效setRandomValuesToButtons(){ \t \t \t \t for(i = 0; i user1047069

0

試試這個

for(int i=0;i<10;i++){ 
    for(int j=0;j<3;j++) 
     buttons_arr[i][j].setText(your text); 
} 
+0

這就是我所做的 – user1047069

1

試試這個:

Button[][] b=new Button[10][3]; 
for(int i=0;i<10;i++) 
{ 
    for(int j=0;j<3;j++) 
    { 
     b[i][j]=new Button(context); 
     b[i][j].setText("something"); 
    } 
} 
+0

沒有聲明「Button Buttons_arr [] [] = new Button [10] [3]」在開始? – user1047069

+0

請參閱編輯答案。 – Hiral