Dalam fungsi saya:
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 () tidak pernah disebut pertama kali saya memuat gambar. Saya telah membaca beberapa topik seperti https://github.com/square/picasso/issues/39 yang merekomendasikan untuk menggunakan metode fetch (Target t) (sepertinya merupakan masalah referensi lemah ...), tetapi fungsi ini tidak tersedia dalam rilis terakhir picasso (2.3.2). Saya hanya memiliki metode fetch (), tetapi saya tidak dapat menggunakan (mytarget) pada saat yang sama
Bisakah Anda menjelaskan kepada saya bagaimana cara menggunakan fetch () dengan Target kustom? Terima kasih.
Doc: http://square.github.io/picasso/javadoc/com/squareup/picasso/RequestCreator.html#fetch--