1

メインアクティビティで次のコードを使用しました

public void button(View v){

         //Create an intent to start the new activity.
            // Our intention is to start secondActivity
         Intent intent = new Intent();
         intent.setClass(this,Activity.class);
         startActivity(intent);
        }

ボタンをクリックしたときにランダムなアクティビティを表示するにはどうすればよいですか? 私を助けてください!

4

3 に答える 3

2

すべてのアクティビティの名前を配列に保存し、乱数を生成して、生成された乱数に対応するアクティビティを取得します。サンプル スニペット

    String[] title = new String[] { "Act1.class", "Act2.class","Act1.class","Act4.class","Act5.class"};

public String getRandomActivity(){
    Random randomGenerator = new Random();
            int randomInt = randomGenerator.nextInt(5);// pass number of elements as parameters
        return title[randomInt-1];//this should return class name

        }

Intent intent = new Intent(this,getRandomActivity())
startActivity(intent)
于 2013-08-15T01:00:22.590 に答える
2

setClass() にエラーがあるため、上記のいくつかのコードをデバッグしました。これは機能します。

Random rnd = new Random();
int x=rnd.nextInt(3)+1;
Intent myIntent = new Intent();
switch(x){
case 1:
myIntent.setClass(view.getContext(),Scrn1.class);
break;
case 2:
myIntent.setClass(view.getContext(), Scrn2.class);
break;
case 3:
myIntent.setClass(view.getContext(), Scrn1.class);
break;
}
startActivity(myIntent);  
于 2013-02-02T06:25:55.027 に答える
0

3 つのアクティビティがあると仮定して、これを試してください。

public void button(View v){
Random rnd = new Random();
int x=rnd.nextInt(3)+1;
         Intent intent = new Intent();
switch(x){
 case 1:
  intent.setClass(this,Activity1.class);
  break;
 case 2:
  intent.setClass(this,Activity2.class);
  break;
 case 3:
  intent.setClass(this,Activity3.class);
  break;
 }
 startActivity(intent);        
}
于 2012-08-23T23:30:21.563 に答える