首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >由LinearLayout创建的TreeView组件-内存不足错误

由LinearLayout创建的TreeView组件-内存不足错误
EN

Stack Overflow用户
提问于 2013-08-20 15:36:28
回答 1查看 145关注 0票数 0

我用LinearLayout base制作了一个树形视图组件。但是当内部项目数量非常大时,android会通过内存不足错误来关闭它。我在每个项目中只使用了3个3kb大小的位图。

我如何减少我的组件(LinearLayout)的内存使用我知道ListViewscrollingCache但我使用LinearLayout

有人能帮上忙吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-08-20 16:15:37

ListView使用的系统仅初始化用户可见的行(视图)。当一行不再可见时,它不会被销毁,但它用于膨胀下一个将可见的视图的布局。使用此系统,即使列表中有1000个项目,您也只能将可见对象保存在内存中。

Here you can find a more accurate description of the recycle system

我认为你也应该看看this video。这是来自Google I/O的关于ListView的一课。我发现理解ListView是如何工作的非常有用。

在您的情况下,如果您不能使用ListView,我认为您应该手动实现此系统。这是相当困难的,所以我能给你的最好的建议是尝试创建一个适合你的需求的定制ListView并使用它。

PS:方法recycle()有一点不同,它用于删除对您正在使用该方法的Bitmap的任何引用。这样,下次GC运行时,它将能够从内存中删除Bitmap

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

https://stackoverflow.com/questions/18329426

复制
相关文章

相似问题

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