谷歌地图用毕加索自定义标记图像,刷新两次以显示图像

时间:2016-01-31 05:22:19

标签: android google-maps google-maps-api-3 picasso

在我的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) {

}
}

0 个答案:

没有答案