我正在将一些位图加载到图像视图中,有时其中一个位图如下所示:

这个问题是如何命名的,所以我知道如何在google中寻找解决方案?
当有大量的位图被放入图像视图并且内存很低时,就会发生这种情况。
private void createBitmapAndSetItToImageView(final ImageAware imageAware, final int position, final boolean subsample) {
if(subsample) {
bitmapOptions.inSampleSize = 2;
}
bitmapInflateAsync = new BitmapInflateAsync(pathsList.get(position), bitmapOptions, new OnBitmapInflateFinishedListener() {
@Override
public void onBitmapInflateFinished(Bitmap bitmap) {
setBitmapToImageView(imageAware, position, bitmap);
if(subsample) {
bitmapOptions.inSampleSize = 1;
}
}
});
bitmapWorkAsync.execute();
}
private void setBitmapToImageView(ImageAware imageAware, int position, Bitmap bitmap) {
if (isAdded() && bitmap != null) {
imageAware.setImageBitmap(bitmap);
}
....
}添加通用镜像加载器标签
发布于 2015-01-13 17:41:34
我不知道是什么导致了这个问题,也不知道它是如何命名的,但我最终找到了导致这个问题的原因--我在所有地方都在使用相同的Bitmap选项实例,它被多个线程访问,并且它的参数经常被动态更改。当我停止这样做并将一个全新的单独的Bitmap选项实例传递给每个线程时,问题就停止了
https://stackoverflow.com/questions/27522856
复制相似问题