Android系统中Bitmap是否有调用recycle方法的必要性

 我来答
育知同创教育
2016-08-10 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
Android系统中Bitmap是否有调用recycle方法的必要性的说明:
Android有自己的垃圾回收机制,对于是不是要编程人员自己调用recycle,还的看情况而定。
1、如果只是使用少量的几张图片,回收与否关系不大。
2、若有大量bitmap需要垃圾回收处理,那必然垃圾回收需要做的次数就更多也发生地更频繁,会对系统资源造成负荷。
所以,这个时候还是自己试用recycle来释放的比较好。
回收例子及代码:
// 获得ImageView当前显示的图片
Bitmap bitmap1 = ((BitmapDrawable) imageView.getBackground()).getBitmap();
Bitmap bitmap2 = Bitmap.createBitmap(bitmap1, 0, 0, bitmap1.getWidth(),
bitmap1.getHeight(), matrix, true);
// 如果图片还没有回收,强制回收
if (!bitmap1.isRecycled()) {
bitmap1.recycle();
}
// 根据原始位图和Matrix创建新的图片
//imageView.setImageBitmap(bitmap2);
imageView.setBackgroundDrawable(new BitmapDrawable(bitmap2));
所以,一定要注意ImageView图片的来源问题,然后在进行相应的recycle。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式