从Buttons获取整数并将它们放到数组中

时间:2014-06-05 17:53:22

标签: java android arrays

我的按钮里面有随机整数。我在tablelayout中创建它们。

  private static final int  a=6;
private static final int  b=6;
private int[] ids = {1,2,3,4,5,6,7,8,9};
Random rand = new Random();
        private void createLayoutDynamically() {

                won = (TableLayout)findViewById(R.id.won);
                for ( int qq = 1; qq < a; qq++) {
                    TableRow tableRow = new TableRow(this);

                for ( int q = 1; q < b; q++) {

                        myButton = new Button(this);

                        final int number = new Random().nextInt(9);      
                    final int rand = (ids[number]);
                        myButton.setText(""+rand);
                    myButton.setTypeface(type);
                    myButton.setId(rand);
                    myButton.setTag(rand);
                    }
    }

我想把我的按钮中的整数放到数组中,然后如何在数组中访问这些数字?

2 个答案:

答案 0 :(得分:0)

您可以在创建按钮时将数字添加到int[]

int[] numberArray = new int[b];
private void createLayoutDynamically() {
        ...
    for ( int q = 1; q < b; q++) {
        ...
        myButton.setTag(rand);
        numberArray[q] = rand;
    }
}

答案 1 :(得分:0)

您需要做的是将所有对按钮的引用放在数组中,因此每次将它们添加到TableRow时,都会将它们添加到按钮数组中。

获得按钮的依据:

只需迭代到按钮数组并获取每个数字。

<强>样品:

创建按钮

的arraylist的全局实例
private ArrayList<Button> arrayButton;

每次迭代后添加按钮

for ( int q = 1; q < b; q++) {

                    myButton = new Button(this);

                    final int number = new Random().nextInt(9);      
                final int rand = (ids[number]);
                    myButton.setText(""+rand);
                myButton.setTypeface(type);
                myButton.setId(rand);
                myButton.setTag(rand);
               arrayButton.add(myButton);
                }

获取按钮的值

iterate to all the array of button
arrayButton.get(index).getTag