2014-02-26 95 views
-1

大家好我有這個代碼,它做了什麼,每當我點擊地圖時,它會在地圖上添加一個標記。任何人都知道如何爲該標記添加標題,並使標記保持不變,因此下一次該活動將運行時,標記將位於我之前單擊的位置。現在,如果我重新運行該活動,標記消失。任何人都知道我怎麼能實現這兩件事?非常感謝。Android谷歌地圖OnMapClickListeners

  gMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() { 

     @Override 
     public void onMapClick(LatLng position) { 



      gMap.addMarker(new MarkerOptions().position(position)); 

     } 
    }); 
     } 
+0

你試過了什麼?發佈一切。 –

+0

請訪問http://stackoverflow.com/questions/16054719/how-to-display-a-google-maps-android-marker-on-top-of-the-others和http://www.androidhive.info/2013/08/android-working-with-google-maps-v2/ –

回答

0

通過使用此代碼,您可以添加標題和圖標標記。

gMap.addMarker(new MarkerOptions().position(position).title("your title").icon(BitmapDescriptorFactory           
           .fromResource(R.drawable.icon)); 

我沒有得到第二個問題。你能解釋一下嗎?

+0

感謝這是工作:) – Kristo

+0

歡迎。快樂的編碼。 :) – anuruddhika

0
//make a static class that will contain your marker and map so that it will not be reloaded 
public class MarkerData{ 
    public static Marker marker; 
    public static GoogleMap map; 
} 

public class MyActivity extends Activity{ 

    @Override 
    protected void onCreate(Bundles b){ 

    if(MarkerData.map == null) 
     MarkerData.map = ((SupportMapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); 

    if(MarkerData.marker == null) 
     MarkerData.marker = new MarkerOptions().position(position); 

    MarkerData.map.addMarker(MarkerData.marker);   

    } 
} 
+0

在最後一行代碼中出現錯誤;/ – Kristo

+0

GoogleMap類型中的方法addMarker(MarkerOptions)不適用於參數(Marker ) – Kristo