应用程序数组列表清除

发布于 2024-12-11 03:58:18 字数 258 浏览 0 评论 0原文

我有一个有多个屏幕的应用程序。假设 ABCD 和 D 也可能打开一些外部应用程序。

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

问题是当我在模拟器上测试这个时,没有任何问题。但在“某些”手机上,导航数组列表超过 3 个屏幕后就会从堆中清除。不管尺寸有多小。

I have an application which has several screens. Lets say A B C D and D might open some external application as well.

All this activities share data, an arraylist with one another and I have created a reference to it in my Application class. (I have created a class which extends Application and referred to it manifest.) So all these are using single instance of arraylist. A initializes the arraylist since its first screen and others might modify it.

The problem is when I test this on emulator nothing gets broken. But on 'some' phones after 3+ screens of navigation arraylist just clears from the heap. No matter how small size is.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

将军与妓 2024-12-18 03:58:19

为 ArrayList 使用 singleton

Use a singleton class for your ArrayList

独守阴晴ぅ圆缺 2024-12-18 03:58:19

使用单例设计模式或使对象静态

使用单例设计模式,您可以:

  • 确保只创建一个类的一个实例
  • 提供对该对象的全局访问点
  • 允许将来使用多个实例,而不影响单例类的客户端

Use singleton design pattern or make your object static

With the Singleton design pattern you can:

  • Ensure that only one instance of a class is created
  • Provide a global point of access to the object
  • Allow multiple instances in the future without affecting a singleton class's clients
纸短情长 2024-12-18 03:58:19

在您的第一个 Activity 中将 ArrayList 声明为 static,然后在任何不会分解的活动中使用它。

Declare ArrayList as static in your first Activity then use it from any it will not broke up.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文