我正在制作一种问题类型的游戏,其中每种不同类型的问题都有不同的布局,因此也是一种不同的活动。
我的主要活动,在点击“播放”按钮后,应该将问题随机化,并以相应的活动开始。
一旦回答了问题,就应该重复这个问题。为此,我希望有一个STATIC方法随机化并启动相应的Activity,但我无法使其工作。
这是你开始游戏的时候。它随机化了第一个问题。 type == 3是一种问题(有许多不同的)
if(Var.qList.get(Var.rndindex).getType()==3)
startActivity(new Intent(this, PlayWordMeaning.class));
}
这样可以正常工作,但我有一个Var.Class,它包含所有静态内容,我希望有一个方法选择下一个问题,以便我可以从中调用它一个人正确回答后的其他问题活动。我尝试使用相同的代码在那里创建一个静态方法,但即使我发送了上下文,它也没有用。
请帮助我们:)
答案 0 :(得分:0)
1。首先,我建议您plain Java class
有randomize 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文件中。