2016-07-28 4 views
0

私はペイントするときにマーカーをバインドする必要があり、データを取得するためにマーカーをクリックする必要があります。データと受信データをどのようにバインドするのですか?私は助けが必要です!ありがとうGoogleマップのマーカー保存されたデータ

+0

ので、我々はあなたが –

答えて

0

Markerにデータをバインドするには、HashMapを使用します。キーはMarker自体になり、値は、あなたのMarker(私の例では、単にString)に関係する必要のあるデータになります:あなたのコードを追加してください

private Map<Marker, String> markers = new HashMap<>(); // Map to bind a Strings to Markers 

// ... 

Marker marker1 = map.addMarker(new MarkerOptions().position(new LatLng(52, 5))); 
markers.put(marker1, "One"); 
Marker marker2 = map.addMarker(new MarkerOptions().position(new LatLng(52.1, 5.1))); 
markers.put(marker2, "Two"); 

map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 
    @Override 
    public boolean onMarkerClick(final Marker marker) { 
     Log.i("Marker", markers.get(marker)); // Query the map to get the String related to the clicked Marker 
     return false; 
    } 
}); 
+0

を必要とするものを助けることができますおかげで、大量のデータがoomになる場合 – user5697633

+0

マップ自体が大量のマーカを管理していません。マーカーのクラスタリングについては、https://developers.google.com/maps/documentation/android-api/utility/marker-clustering – antonio

+0

を試してみてください – user5697633

関連する問題