我正在使用Picasso从URL加载图像。由于我需要位图进行进一步处理,因此我使用Target()类保存位图。但是,Picasso在第一次运行时没有加载图像。但是当我转到另一个活动并返回到实现了Picasso的活动时,它就会加载。为什么会发生这种情况?有什么解决方法吗?我的代码如下:
Picasso.with(getActivity()).load(card.getExtras().getImageUrl()).into(new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");
Date now = new Date();
filename ="certificate_"+ formatter.format(now) + ".png";
File path=null;
if (getActivity().getExternalCacheDir()==null) {
path=getActivity().getCacheDir();
}
if(getActivity().getExternalCacheDir()!=null){
path=getActivity().getExternalCacheDir();
}
File image=new File(path+filename);
FileOutputStream fileOutPutStream = null;
try {
fileOutPutStream = new FileOutputStream(image);
bitmap.compress(Bitmap.CompressFormat.PNG, 80, fileOutPutStream);
fileOutPutStream.flush();
fileOutPutStream.close();
Log.d("---REACHED","FILE SAVED--------------");
} catch (Exception e) {
Crashlytics.logException(e);
}