2011-10-21 80 views
1

我有一个应用程序有几个屏幕。假设A B C D和D可能会打开一些外部应用程序。应用程序arraylist清除

所有这些活动的共享数据,彼此一个ArrayList,我已经在我的应用类中创建对它的引用。 (我创建了一个扩展Application的类,并将其引用为manifest。)所以这些都使用了arraylist的单个实例。从第一个屏幕开始初始化数组列表,其他人可能会修改它。

问题是,当我测试这个模拟器上没有得到打破。但是,在3+以上的导航数据列表屏幕从堆中清除后,在“某些”手机上。无论多小。

回答

0

使用singleton类ArrayList中

-1

在声明ArrayListstatic你的第一个Activity然后用它从任何就不会分手了。

+0

为什么投票可以有人解释? – ingsaurabh

+0

那么,静态并不意味着这些情况对吗?我没有投票给你,但它可能是原因。 – Shardul

+0

@Shardul谢谢,我知道,当我们使用静态,但我也认为它在Android编程方面的好方法 – ingsaurabh

0

使用Singleton设计模式或使你的对象静态

随着Singleton设计模式,您可以:

  • 确保只有一个类的实例被创建
  • 提供一个全局访问点对象
  • 允许在未来的多个实例,而不会影响单个类的客户
+0

我试过了,它仍然是同样的问题。 – Shardul

+0

分享你的代码... – gtiwari333

+0

有4个活动,我说的和一个应用程序类,我不能共享代码,因为有成千上万的线 – Shardul