2017-01-27 24 views
2

我有问题。主屏幕上的项目我使用7个图像,格式为.png,大小为50 - 60 kb。在应用程序在手机上运行的同时,Monitor显示设备使用20 mb内存。如何上传图片以使用尽可能少的内存?感谢你的回答。在项目中使用图片

我用在布局标准安装,安装程序

main_image.setImageDrawable(getResources(getDrawable(R.drawable.main).); 

和滑翔

library(Glide.with(getApplicationContext()).load(R.drawable.main).placeholder(R.color.white).diskCacheStrategy(DiskCacheStrategy.NONE).skipMemoryCache(true).into(main_image);), 

这是不坏,但很长负荷图像。

+1

https://developer.android.com/training/displaying-bitmaps/index.html –

+1

或者你可以使用排图像加载器,或毕加索或下滑,等等。许多图像库可供选择 –

+0

请提供代码的相关部分,特别是如何加载和处理图像。您可以通过编辑您的初始帖子来添加信息。 – user1438038

回答

0

此问题与帖子Images taking too much memory类似。对于小尺寸图像而言,获取大量内存消耗的原因很可能是由于使用了高像素图像,因此在存储在位图中时会占用更多的空间。逸岸我就在今天实现了答案内存占用率过高的小图像时Dimezis在仅考虑大小,而不是寻找到图像(link)的决议指出我的愚蠢。

现在为了解决方案,我会推荐使用Universal Image Loader,这是一个相当广泛使用的图像加载库。在这里面,有加载图像的选项RGB_565可以约一半减少你的内存消耗(有看到的结果几乎)等等。 Link to a more detailed answer

而且ofcourse我建议你也寻找到了