在Android中使用Lazy Loader时,GalleryView中的图像质量下降

时间:2012-11-07 10:36:26

标签: android lazy-loading image-gallery android-gallery image-quality

我在Android应用程序中使用Gallery View。所有图像都来自url,所以我在GalleryView中使用LazyLoader进行图像加载。画廊完全填充。但它失去了图像质量..我想填充画廊没有图像质量丢失..请帮助我..

1 个答案:

答案 0 :(得分:5)

如果你在谈论Fedor的延迟加载,那么解决方案就在于:

//Find the correct scale value. It should be the power of 2.
final int REQUIRED_SIZE=70;
int width_tmp=o.outWidth, height_tmp=o.outHeight;
int scale=1;
while(true){
    if(width_tmp/2<REQUIRED_SIZE || height_tmp/2<REQUIRED_SIZE)
        break;
    width_tmp/=2;
    height_tmp/=2;
    scale*=2;
}

这是从第96行到第106行:https://github.com/thest1/LazyList/blob/master/src/com/fedorvlasov/lazylist/ImageLoader.java。我正在链接这个,以便您可以检查源代码并与您的代码进行比较。

您需要在此处更改此位:final int REQUIRED_SIZE= 70 。请注意,此数字需要 2 的幂。使用默认值 70 ,您将获得小图像,当在需要显示更大图片的应用程序中使用时,它们看起来会变形。四处游玩,直到你对结果感到满意为止。

这应该适合你。