0

私のAndroidアプリケーションにはボタンのグループがあります。私はそれらにb1、b2、b3としてIDを与えました...そしてランダム関数を使用して番号を生成し、その番号を使用してボタン画像を変更しています。元。乱数が6の場合、IDがb6のボタンの画像を変更したい。整数 6 と b を使用して ID b6 を作成し、そのボタンで操作を実行するにはどうすればよいですか。

    String id;
    Random rand=new Random();
int num=rand.nextInt(9)+1;
id="b"+num;

しかし、AndroidではボタンのIDは文字列形式ではありません

4

2 に答える 2

1

次のように、すべてのボタン ID を含む配列を宣言するだけです。

int[] buttonIds = new int[] {R.b1, R.b2, ...};

それを使用して、ランダム ボタンの ID にアクセスします。

num = rand.nextInt(buttonIds.length);
int buttonId = buttonIds[num];
findViewById(buttonId).doSomething();

しかし、ボタンの数が多くなったり、一定でなくなったりすると面倒です。しかし、高速でシンプルに見える少数の場合。

于 2013-01-28T07:43:41.123 に答える
0

Resources クラスには次のメソッドがあります。

public int getIdentifier (String name, String defType, String defPackage) 

それを見てください。

于 2013-01-28T07:41:09.110 に答える