【问题标题】:Android Code - Radom number generation for calling activity [duplicate]Android代码 - 调用活动的随机数生成[重复]
【发布时间】:2012-09-17 22:10:23
【问题描述】:

可能重复:
Generating random number in a range with Java
How can I generate random number in specific range in Android?

这是我的场景 来自 Mainactivity ;单击按钮时,我想生成一个从 1 到 4 的随机数 根据输出,我想编写一个 if-else 来调用 4 个不同的活动

所以在点击时,如果生成 4,则调用活动 4 下次可以生成 1 并且应该调用活动 1 等等....

有人可以帮我处理这段代码吗?

【问题讨论】:

  • "有人可以帮我处理这段代码吗?"什么代码?您是否希望有人为您编写代码?请阅读常见问题解答。您应该在尝试解决您的问题时付出一些努力/研究,然后寻求具体的帮助。

标签: android


【解决方案1】:
   public void test1(){
    Random r = new Random();
    int index = r.nextInt(4)+1;

    Intent intent = null;

    switch(index){
    case 1:  intent = new Intent(this, Activity1.class);
        break;
    case 2:  intent = new Intent(this, Activity2.class);
        break;
    case 3:  intent = new Intent(this, Activity3.class);
        break;
    case 4:  intent = new Intent(this, Activity4.class);
        break;
    default:
     Log.e("ERROR", "");
            return;
    }
    if(intent != null){
       this.startActivity(intent);
    }
   }

【讨论】:

  • 这是我得到的非常多的代码,但我总是最终得到第一个活动。
  • 最终意图意图 = null; - 我在这一行出现错误。我已经尝试了最终的 Intent 意图,也尝试了 = null。获取空指针异常
  • 这只是一个快速启动代码,已编辑。
【解决方案2】:
myBtn.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub

            Random r = new Random();
            int index = r.nextInt(4)+1;

            Intent intent;

            if (index == 4) {
                intent = new Intent(Activity.this, Activity4.class); 
            }
            else if (index == 3) {
                intent = new Intent(Activity.this, Activity3.class); 
            }
            else if (index == 2) {
            intent = new Intent(Activity.this, Activity2.class); 
            }
            else 
            intent = new Intent(Activity.this, Activity1.class);                    

            startActivity(intent);                
         }
    });

【讨论】:

  • 最终意图意图 = null; - 我在这一行出现错误。我已经尝试了最终的 Intent 意图,也尝试了 = null。获取空指针异常
  • public void onClick(View v) { Random r = new Random();整数索引 = r.nextInt(4)+1;最终意图 myintent1 = null; switch(index){ case 1: new Intent(LearningTimeMenu.this,colorActivity.class);休息;案例2:新意图(LearningTimeMenu.this,shapeActivity.class);休息;案例3:新意图(LearningTimeMenu.this,numberActivity.class);休息;案例4:新意图(LearningTimeMenu.this,colorActivity.class);返回; } startActivity(myintent1);
  • 你在哪里评论?那不是我的代码...试试我的答案,然后寻求帮助
  • 谢谢。这工作得很好!!!
  • 如果你完成了,那么请通过接受一个答案来结束这个问题......