2

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

4

1 回答 1

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,您将获得小图像,当用于需要显示更大图片的应用程序时,它们看起来会失真。玩弄它,直到您对结果感到满意为止。

这应该为您解决问题。

于 2012-11-07T10:52:30.487 回答