2018-09-12

在适配器Adapter中设置bitmap,极大可能会引起一些异常。

先简略表述下我的异常情况:

我是在GridView结合ViewPager一起用的,选择一些默认图片,然后选择图片,传递到GridView的Adapter中去的。然后根据拖动缩放ViewPager中Fragment的图片,然后获得其中的缩略图,进行Adapter中的设置。
问题来了,选择图片了,再从新选择,就容易造成Adapter中的Bitmap被recycled了。

出现以下这样的问题
1A22A13C783873B9C3990592EDACF11F.png

解决的办法是: 我是用Glide来解决的,不是使用ImageView.setImageBitmap(bp)来解决的,因为Glide中有缓存机制,故如果要自己写的话,人需要用到缓存的机制,避免被回收利用,而引用的BitmapDrawable仍引用着,那样就容易造成上述问题。在此谨记下!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 感谢大佬,cv 过来留着自己学习; 原作者:https://www.jianshu.com/p/4c0bdaedb...
    猩猩的夜阅读 537评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,726评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 13,044评论 2 59
  • https://www.imooc.com/article/75436 小白必须懂的MongoDB的十大总结 一、...
    Albert陈凯阅读 747评论 0 1
  • 孤独不是寂寞,孤独只是一种状态。寂寞是一种坏情绪。而孤独不仅是状态也是常态,人更多的时候都是一个人的。孤独总...
    LxDong阅读 195评论 0 0