Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 毕加索图像加载以前缓存的图像_Android_Imageview_Picasso_Image Loading_Image Caching - Fatal编程技术网

Android 毕加索图像加载以前缓存的图像

Android 毕加索图像加载以前缓存的图像,android,imageview,picasso,image-loading,image-caching,Android,Imageview,Picasso,Image Loading,Image Caching,我在项目中使用毕加索库从服务器获取url图像到ImageView中,但不幸的是,毕加索从光盘加载了以前缓存的图像,而不是从url加载新图像。请找到下面的代码供您参考 Picasso.with (ImageActivity.this) .load(url) .placeholder (R.drawable.default_user) .error (R.drawable.defa

我在项目中使用毕加索库从服务器获取url图像到ImageView中,但不幸的是,毕加索从光盘加载了以前缓存的图像,而不是从url加载新图像。请找到下面的代码供您参考

Picasso.with (ImageActivity.this)
                    .load(url)
                    .placeholder (R.drawable.default_user)
                    .error (R.drawable.default_user)
                    .into(imgUser);
我还尝试了以下解决方案:

Picasso.with(ImageActivity.this).invalidate(url);

但对我来说什么都不管用。请帮助我解决我的问题

提前感谢。

试试:

  Picasso.with(mContext)
        .load(URL)
        .memoryPolicy(MemoryPolicy.NO_CACHE )
        .networkPolicy(NetworkPolicy.NO_CACHE)
        .error(R.drawable.xxx)
        .into(xx);

我知道已经有了答案,但在尝试了一些方法后,我找到了一个非常简单的方法: 检查图像是否为空-如果不是-然后用毕加索加载图像,如下所示:

if(vImage.getDrawable() == null)
Picasso.with(context).load(URL).into(vImage);

希望这对其他人有所帮助。

所以每次你想加载一个新图像而不是存储在缓存中时,有没有一个解决方案可以精确地反转它。我只想从缓存加载图像,即使有连接。因为我不想设置禁用图像加载来保存数据
if(vImage.getDrawable() == null)
Picasso.with(context).load(URL).into(vImage);