我正在尝试创建一个简单的应用程序,其中有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));
最后一行导致了一些问题。为什么以及如何解决这个问题?
答案 0 :(得分:1)
您实际上是循环300次而不是30次
答案 1 :(得分:1)
试试这个
for(i=0..9) //psaudo
for (j=0..2) //psaudo
buttons_arr[i][j].setText(""+some_int);
答案 2 :(得分: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");
}
}
答案 3 :(得分:0)
我没有尝试过2D数组。但我对类似问题的经验似乎是,按钮_arr [i] [j]仍然没有初始化。您需要创建一个新按钮:
buttons_arr[1][1] = new Button();
或
buttons_arr [1] [1] =(按钮)findViewById(R.id.buttonAtPosition1_1);
答案 4 :(得分:0)
试试这个
for(int i=0;i<10;i++){
for(int j=0;j<3;j++)
buttons_arr[i][j].setText(your text);
}