gpt4 book ai didi

android - 图像未存储在缓存中

转载 作者:太空狗 更新时间:2023-10-29 13:14:43 24 4
gpt4 key购买 nike

我有这个方法,一切正常,但图像总是从服务器获取,而不是从缓存中加载!发生了什么事?

public static void makeImageRequest(String Unique_ID, final View parentView, final int id) {

String url = FILE_UPLOAD_FOLDER + Unique_ID + ".png";
final int defaultImageResId = R.drawable.user;
// Retrieves an image specified by the URL, displays it in the UI.
ImageCacheManager.getInstance().getImage(url, new ImageListener() {

@Override
public void onErrorResponse(VolleyError error) {
ImageView imageView = (ImageView) parentView.findViewById(id);
imageView.setImageResource(defaultImageResId);
}

@Override
public void onResponse(ImageContainer response, boolean isImmediate) {
if (response.getBitmap() != null) {
ImageView imageView = (ImageView) parentView.findViewById(id);
imageView.setImageBitmap(response.getBitmap());
} else if (defaultImageResId != 0) {
ImageView imageView = (ImageView) parentView.findViewById(id);
imageView.setImageResource(defaultImageResId);
}

}
});
}

最佳答案

只需使用 Picasso 代替 ImageCacheManagerPicasso 是一个强大的 Android 图片下载和缓存库。图像为 Android 应用程序添加了急需的上下文和视觉效果。 Picasso 允许在您的应用程序中轻松加载图像——通常只需一行代码!

Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);

这里也可以管理图片下载成功还是失败:

                    Picasso.with(context)
.load("http://i.imgur.com/DvpvklR.png")
.into(imageView, new Callback() {
@Override
public void onSuccess() {
// your code
}

@Override
public void onError() {
// your code
}
});

你应该只在你的 gradle 中添加这一行:

compile 'com.squareup.picasso:picasso:2.5.2'

希望对您有所帮助!

关于android - 图像未存储在缓存中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36201467/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com