首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安卓-启动随机活动,但没有重复?

安卓-启动随机活动,但没有重复?
EN

Stack Overflow用户
提问于 2013-11-16 02:10:30
回答 2查看 722关注 0票数 0

因此,我可以使用随机数生成器创建一个随机活动,但我想要的是,如果用户进入活动2,那么用户就不能返回到用户已经存在的活动1。

我有10个活动,每个活动都应该有一个随机数生成器,所以用户会去一个随机活动。

示例:

代码语言:javascript
运行
复制
Act.1 ---> Act. 3
Act.3 ---> Act. 9
Act.9 ---> Act. 2
Act.2 ---> Act. 6 

注意:因此,从活动2中,用户不应该返回到以前的活动。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-16 02:16:29

你能做的就是把多余的东西捆在一起。http://miragemiko.wordpress.com/2010/03/20/android-using-bundle-for-sharing-variables/

在这种情况下,您可以在包中以键的形式传递字符串,其中包含用于跳过活动的意图,因此可以确保永远不会重复活动。

票数 0
EN

Stack Overflow用户

发布于 2013-11-16 02:15:24

保持一个数字为1到10的ArrayList。使用随机数生成器,选择ArrayList的一个索引,移除该位置的元素并执行该活动。然后,从左边的9个中随机选择一个,并执行相同的操作,直到ArrayList为空。

示例:

代码语言:javascript
运行
复制
// Create arraylist of pending activities
ArrayList<Integer> pendingActivities = new ArrayList<Integer>();
for(int i = 1; i <= 10; i++) pendingActivities.add(i);

// Randomly pick activity       
Random rand = new Random();
while(!pendingActivities.isEmpty()) {
  int nextIndex = rand.nextInt(pendingActivities.size());
  int nextActivity = pendingActivities.remove(nextIndex);
  System.out.println("Next activity: "+nextActivity);
}

用移动到该活动的代码替换println

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20013800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档