0

たとえば、ボタンがクリックされた場合にランダムなアクティビティを開始することは可能ですか?

スイッチ/ケースを使用したいくつかのソリューションは既に見ましたが、実際には次のようなことをしたくありません:

case 1: startintent1;
break; 
case 2: startintent2;
break; 
...
case 100: startintent100;
break; 

アクティビティを開くために使用されるコードを配列に保存し、その配列からアイテムを選択することは可能Randomですか?

前もって感謝します!

4

4 に答える 4

1

スイッチケースを使用することの何が問題なのかわかりませんが、アクティビティを配列に入れてから、ランダムな整数 0 から n を使用して 1 つを選択できると思います。

于 2013-11-08T21:33:03.780 に答える
1
Class c = Class.forName("classname");
Method m = c.getMethod("startintent"+i);
m.invoke(this);

これは名前で呼び出します。すべての関数の名前がす​​べて一貫している場合。次に、random を使用して数値を追加します。

于 2013-11-08T21:40:24.050 に答える
0

これを試して :

x.setOnClickListener(新しいOnClickListener() {

private static final Random random = new Random();

@Override
public void onClick(View v) {
 //TODO --place your activity in an array list here 
    int randomMsgIndex = random.nextInt(yourarraylist.length - 1);
//TODO-start that activity using intents.
}

});

于 2013-11-08T21:54:01.383 に答える