在我的Android应用谷歌地图中,我使用毕加索来显示自定义标记图像,我必须刷新活动两次以使其显示标记的自定义图像。第一次显示默认标记,然后当我刷新它时显示自定义标记。如何让它第一次显示自定义标记?
主要活动:
myMarker = mMap.addMarker(new MarkerOptions().position(new LatLng(Double.parseDouble(latitude), Double.parseDouble(longitude))).title(profile_icon).snippet());
PicassoMarker marker = new PicassoMarker(myMarker);
Picasso.with(MainActivity.this).load(icon_url).into(marker);
PicassoMarker:
public class PicassoMarker implements Target {
Marker mMarker;
PicassoMarker(Marker marker) {
mMarker = marker;
}
@Override
public int hashCode() {
return mMarker.hashCode();
}
@Override
public boolean equals(Object o) {
if(o instanceof PicassoMarker) {
Marker marker = ((PicassoMarker) o).mMarker;
return mMarker.equals(marker);
} else {
return false;
}
}
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
mMarker.setIcon(BitmapDescriptorFactory.fromBitmap(bitmap));
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
}
}