我在ArrayList
中有一个Activity
个字符串项超过1000个。 ArrayList
的成员数不会更改,也不会发生元素更新。该活动可以在application
生命期内多次创建和销毁,但也可能是几次。此外,ArrayList
将用于构建ListView
。现在我在约ArrayList
中有两种方法:
ArrayList
onCreate()
Activity
ArrayList
onCreate()
中创建并初始化Activity
以避免内存泄漏我不知道哪种方式更好或有其他方式吗?
答案 0 :(得分:0)
如果您不需要一次显示所有1000个元素,您可以尝试使用SQLite数据库和Cursor,它将部分加载您当前需要的字符串。
答案 1 :(得分:0)
您可以使用singleton
方法来避免内存泄漏。下面的链接可以帮助您制作singleton
对象。
答案 2 :(得分:0)
不幸的是,我不能诚实地告诉你,如果有更好的方法来解决你的问题,因为你没有解释所提到的Arraylist的用途。试着向我们解释更多关于Arraylist的信息,我们会看到。如果我应该考虑你描述的两种方式,我有这样的说明:
最后,我建议你将Arraylist移到Activity之外,这样它就只会创建一个。如果每个活动中的字符串不同,您仍然可以在整个应用程序中创建所需的集合变异。