2017-03-08 33 views
1

是否可以使用android中的任何圖像庫在圖像上添加標記?使用畢加索在圖像中添加標記

到目前爲止我已經使用picasso將圖像加載到ImageView中,並且我使用Google的所有解決方案都在Google地圖中添加標記!

Just Like the marker center in the image

+0

看到這個:HTTP://stackoverflow.com/questions/27095469/how-can-i-use-picasso-to-add-icon到標記 – rafsanahmad007

+0

它似乎是GoogleMaps的代碼 上述鏈接中給出的代碼也不起作用 – user1809029

回答

0

畢加索提供了可用於實現自己的圖像目的地的通用目標接口。具體來說,你會想要覆蓋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);