android开发listView加载几百张图片不出现OOM的方法

  次阅读 作者:智能小宝 来源:互联网 2015-12-04 16:38 我要评论(0)

这两天搞了个小开源项目拿出来跟大家分享一下,主要就是解决怎样能够在listView中加载大量图片并生成Thumbnail尽量避免出现OOM的 error,现在做的有了一定的雏形了拿出来一块讨论下,看看大家有什么意见想法可以提升的。

刚开始做这个东西的时候大家都说用softReference因为这个会在内存吃紧的时候主动释放掉自己占用的内存,防止出现oom,所以我就很高兴的屁颠屁颠的用了这个作为缓冲bitmap的容器,开始效果还不错担当图片数大于50左右的时候会出问题了就,出现各种问题,刷新延迟,错乱等等,之后发现可能是这个softreference的原因,当内存消耗比较大的时候会自动销毁部分之前已经缓存过的bitmap所以决定不用这个了。但是这样又会带来另一个问题那就是当图片大于五百张的时候会出现oom的问题,前提是你得做好用完的bitmap的释放工作才能到五百,不然会更少的图片引起oom,三百二百不知道。这下我就在找能够较好时限内存管理的bitmap的方法,于是乎bitmapfactory中的各种方法,等比缩小option等等,时能达到一定的解决oom的问题,但是如果用户就是要显示等比得bitmap那么就不能满足要求了,哎又是一顿瞎翻之后找到了一个叫做universalimageloader的github的开源控件用了一下结果还不错,所以就用这个吧,具体的项目进度和源码请大家到git上自己下载吧

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...