如何在不同的活动中使用相同的ArrayList(Android和Java)

时间:2014-01-18 23:37:28

标签: java android arraylist android-activity

我正在制作一个小应用程序并且需要一种方法来实现它,所以当按下按钮时它会打开一个随机活动,然后再打开那个活动。

我这样做是通过制作一个随机排序的ArrayList并从中选择一个数字。然后删除此号码。然后使用所选数字打开其中一项活动。

然而,当我进入另一个活动时,我不能使用之前的相同ArrayList(包含所有相同的数字)。

有没有办法将ArrayList从活动移动到活动?

提前致谢!

这是我制作ArrayList并选择一个数字的代码:

                int min = 1;
                int max = 3;
                ArrayList<Integer> list = new ArrayList<Integer>();
                for(int i = min; i <= max; i++) list.add(i);
                Collections.shuffle(list);

                Integer x = list.get(0);
                list.remove(0); 

1 个答案:

答案 0 :(得分:1)

您可以在startActivity intent(intent.putExtra)中传递它,也可以在应用程序类中使用静态变量:

How to declare global variables in Android?

为了传递带有intent的ArrayList,这是一个非常有用的帖子:

Pass arraylist of user defined objects to Intent android

基本上,如果使用所有基元,则可以传递它们,而无需创建可放置的parcelable对象。您也不必创建可分隔对象(因为即使您没有看到任何错误,也不能在意图中成功传递未扩展或实现parcelable的对象。)