mam taki kod:Android Google Maps dodać do znacznika własny tag
protected void onPostExecute(final ArrayList<HashMap<String, String>> adapter) {
for (final HashMap<String, String> a : adapter) {
LatLng pos = new LatLng(Double.valueOf(a.get(TAG_latitude)), Double.valueOf(a.get(TAG_longitude)));
Log.e("pppppos", String.valueOf(pos.latitude));
Marker m = map.addMarker(new MarkerOptions().position(pos)
.title(a.get(TAG_NAME))
.snippet("Kiel is cool"));
map.setOnInfoWindowClickListener(
new OnInfoWindowClickListener(){
public void onInfoWindowClick(Marker marker){
Intent nextScreen = new Intent(SearchExchangerActivity.this, BankExchangersListActivity.class);
nextScreen.putExtra("exchanger_id", id);
startActivityForResult(nextScreen, 0);
}
});
}
Ale muszę ustawić niewidoczne pola użytkownika np Tag_id
dla każdego znacznika i używać tego identyfikatora następnie podczas wysyłania dodatkowych informacji do innych aktywność, coś w stylu:
protected void onPostExecute(final ArrayList<HashMap<String, String>> adapter) {
for (final HashMap<String, String> a : adapter) {
LatLng pos = new LatLng(Double.valueOf(a.get(TAG_latitude)), Double.valueOf(a.get(TAG_longitude)));
Marker m = map.addMarker(new MarkerOptions().position(pos)
.title(a.get(TAG_NAME))
.snippet("Kiel is cool")
.Tag_id(TAG_ID));
map.setOnInfoWindowClickListener(
new OnInfoWindowClickListener(){
public void onInfoWindowClick(Marker marker){
Intent nextScreen = new Intent(SearchExchangerActivity.this, BankExchangersListActivity.class);
nextScreen.putExtra("exchanger_id", marker.get(TAG_ID));
startActivityForResult(nextScreen, 0);
}
});
}
Czy to naprawdę możliwe? Jak mogę uzyskać w swoim słuchaczu jaki znacznik klikam?
również można to zrobić poprzez tytułowym polu ... ale dostaję błąd podczas zapisywania marker.getTitle()
...
UPD
for (final HashMap<String, String> a : adapter) {
LatLng pos = new LatLng(Double.valueOf(a.get(TAG_latitude)), Double.valueOf(a.get(TAG_longitude)));
Log.e("pppppos", String.valueOf(pos.latitude));
HashMap<Marker, String> m = new HashMap<Marker, String>();
m.put(map.addMarker(new MarkerOptions().position(pos)
.title(a.get(TAG_NAME))
.snippet("Kiel is cool")), "1");
}
map.setOnInfoWindowClickListener(
new OnInfoWindowClickListener(){
public void onInfoWindowClick(HashMap<Marker, String> marker){
Intent nextScreen = new Intent(SearchExchangerActivity.this, BankExchangersListActivity.class);
nextScreen.putExtra("exchanger_id", "1");
startActivityForResult(nextScreen, 0);
}
});
można dać przykład wykorzystania mapy? –
gdy próbuję napisać Mapa m = m.put (map.addMarker (nowe MarkerOptions(). Pozycja (poz) \t \t \t \t .title (a.get (TAG_NAME)) \t \t \t \t \t \t \t .Snippet ("Kiel is cool")), "1"); \t coś jest złe –
@ValdisAzamaris Zobacz tutaj, aby obejść ten problem, używając 'Map': http://code.google.com/p/gmaps-api-issues/issues/detail?id=4650 –