在第一次加载时未调用的Target对象的onBitmapLoaded
在我的功能:
public void getPointMarkerFromUrl(final String url, final OnBitmapDescriptorRetrievedListener listener) {final int maxSize = context.getResources().getDimensionPixelSize(R.dimen.icon_max_size);Target t = new Target() { @Override public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) { if (bitmap != null) listener.bitmapRetrieved(getBitmapDescriptorInCache(url, bitmap)); else loadDefaultMarker(listener); } @Override public void onBitmapFailed(Drawable errorDrawable) { loadDefaultMarker(listener); } @Override public void onPrepareLoad(Drawable placeHolderDrawable) { }};Picasso.with(context) .load(url) .resize(maxSize, maxSize) .into(t);}
我第一次加载图片时从不调用onBitmapLoaded()。我已经阅读了一些话题,如https://github.com/square/picasso/issues/39,建议使用fetch(Target t)方法(这似乎是弱引用的问题......),但是这个函数在毕加索的最后一个版本(2.3.2)中没有。我只有一个fetch()方法,但我不能同时使用(mytarget)
你能解释一下如何使用fetch()和自定义Target吗?谢谢。
Doc:http://square.github.io/picasso/javadoc/com/squareup/picasso/RequestCreator.html#fetch--
慕少森
回首忆惘然
慕仙森