是否可以使用android中的任何图像库在图像上添加标记?
到目前为止,我已经使用毕加索将图像加载到ImageView中,我用Google搜索的所有解决方案都涉及在Google地图中添加标记!
答案 0 :(得分:2)
Picasso提供了一个通用的Target界面,您可以使用它来实现自己的图像目标。具体来说,您需要覆盖onBitmapLoaded以填充标记。
下面给出了一个基本的实现。
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) {
}}
您可以这样使用它:
marker = new PicassoMarker(myMarker);
Picasso.with(MainActivity.this).load(URL).into(marker);