来自静态方法的新活动,Android Java

时间:2012-08-05 09:49:38

标签: java android methods android-activity static

我正在制作一种问题类型的游戏,其中每种不同类型的问题都有不同的布局,因此也是一种不同的活动。

我的主要活动,在点击“播放”按钮后,应该将问题随机化,并以相应的活动开始。

一旦回答了问题,就应该重复这个问题。为此,我希望有一个STATIC方法随机化并启动相应的Activity,但我无法使其工作。

这是你开始游戏的时候。它随机化了第一个问题。 type == 3是一种问题(有许多不同的)

        if(Var.qList.get(Var.rndindex).getType()==3)

            startActivity(new Intent(this, PlayWordMeaning.class));
        }

这样可以正常工作,但我有一个Var.Class,它包含所有静态内容,我希望有一个方法选择下一个问题,以便我可以从中调用它一个人正确回答后的其他问题活动。我尝试使用相同的代码在那里创建一个静态方法,但即使我发送了上下文,它也没有用。

请帮助我们:)

2 个答案:

答案 0 :(得分:0)

1。首先,我建议您plain Java classrandomize function,不管是静态还是不......它随机返回一个数字根据剩下的总问题。提示:曾经问过的问题将从列表中删除)

2. 使用地图将问题编号与活动名称相关联。

HashMap< Integer,String > //其中Integer将成为Ques,而String将成为活动名称

答案 1 :(得分:0)

如果我能正确理解你可以简单地创建一个类名数组,然后生成一个随机数来获取类:

    Class[] actArr = new Class[2];

    actArr[0] = Activity2.class;
    actArr[1] = Activity3.class;

    Random rn = new Random(System.currentTimeMillis());
    int val = rn.nextInt(2);

    Intent in = new Intent(this, actArr[val]);
    startActivity(in);

它有效!请记住将这些活动类放在AndroidManifest.xml文件中。