无法让这个数组工作

时间:2013-06-20 18:45:06

标签: java android

我想为我的Android应用创建一个按钮网格。我使用传统的for循环来创建它,它通常可以在其他语言中使用等。但是当我测试我的应用程序时,它没有响应并在页面加载时关闭。我该如何解决这个问题......

but = new Button[4][4];
linearLayout = (ViewGroup) findViewById(R.id.buttonlayout);
for (int r = 0; r<but.length; r++) {
   for (int c = 0; c<but.length; c++) {
      but[r][c].setLayoutParams(new LinearLayout.LayoutParams(20, 20));
      but[r][c] = new Button(this);
      but[r][c].setX(20 * r);
      but[r][c].setY(20 * c);
      but[r][c].setText(" ");
      linearLayout.addView(but[r][c]);
   }
}

1 个答案:

答案 0 :(得分:3)

but = new Button[4][4];
linearLayout = (ViewGroup) findViewById(R.id.buttonlayout);
for (int r = 0; r<but.length; r++){
for (int c = 0; c<but.length; c++){
but[r][c] = new Button(this); // you should create your object before set layout!!
but[r][c].setLayoutParams(new LinearLayout.LayoutParams(20, 20));
but[r][c].setX(20 * r);
but[r][c].setY(20 * c);
but[r][c].setText(" ");
linearLayout.addView(but[r][c]);