我正在使用android:background
给安卓布局一个背景图片。
在放入一些图片后,我得到了这个异常:
08-24 00:40:19.237: E/dalvikvm-heap(8533): Out of memory on a 36000016-byte allocation.
如何在android上使用大图片作为背景?
我可以扩展应用程序堆内存吗?还是做了一些不好的事情?
发布于 2018-09-18 07:35:45
使用Glide可以帮助你缓存图像并从内存中加载
Glide
.with(/*context*/)
.load(/*urlToImage*/)
.thumbnail(0.5f/*scale*/) //you can even downscale the image
.into(imageView);
其次,使用Glide,您可以通过使用OnScrollChangedListener
观察滚动行为来暂停和恢复请求
if(scrollState == SCROLL_STATE_IDLE){
Glide.with(this /*context*/).resumeRequests();
} else if(scrollState == SCROLL_STATE_TOUCH_SCROLL ||
scrollState == SCROLL_STATE_FLING){
Glide.with(this).pauseRequests();
}
发布于 2019-01-05 13:48:20
对于位图,Glide是最好的。
Glide.with(getContext()).load(img_url_1).apply(new RequestOptions().override(Target.SIZE_ORIGINAL)).into(imageView1);
https://stackoverflow.com/questions/18412343
复制相似问题