2012-01-06 68 views
0

我的按钮是:我可以添加数组到android按钮吗?

<Button 
     android:text="" 
     android:id="@+id/b1" 
     android:gravity="center_horizontal" 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:background="@drawable/the_border" 
     android:textSize="75sp"/> 

而且我有很多的(B0,B1,B2)......

我的Java:

for(int index = 0; index < 9; index++) 
    { 
     places[index] = (Button) findViewById(R.id.b + index); 
     places[index].setOnClickListener(this); 
    } 

我怎么能这样做? findViewById(R.id.b + index)需要更改。可能吗?谢谢

回答

1

使用tag属性给他们连续标记0,1,2等,然后findViewWithTag()在一个循环中构建一个数组。请注意,标记是一个字符串,它不是数字。

0

这样你就不会在布局中添加那个按钮。

1)你不能给这些按钮(或一般的容器/元素)相同的ID。一个ID是一个唯一的标识符,因此它必须是唯一的 2)findViewById将搜索到布局三以找到具有该ID的元素。如果该元素不存在(您没有将它们添加到布局中),则它将失败并出现nullpointerexception。

你需要做的是从你的java代码创建按钮并将它们添加到容器(例如LinearLayout)。

所以你做一个findViewById并寻找容器,然后你添加视图(按钮)到该容器。

你需要一个代码示例吗?

相关问题