嗨我有一张带有很多标记的地图。当我将标记添加到地图时,我想为每个标记添加一个onInfoWindowClick监听器和单独的数据。我想用onInfoWindowClick Listener加载带有标记信息的活动。
代码无效。创建activety时,所有侦听器都会同时触发,当我单击infoWindow时,没有任何反应。
private void addMarkerToMap(double lat, double lng, String eventTitle,
String eventDiscribtion) {
Marker currentMarker = myMap.addMarker(new MarkerOptions()
.position(new LatLng(lat, lng)).title(eventTitle)
.snippet(eventDiscribtion));
onInfoWindowClick(currentMarker);
}
@Override
public void onInfoWindowClick(Marker marker) {
Intent nextScreen = new Intent(MapsActivity.this,
EventActivity.class);
nextScreen.putExtra("userId", "" + userId);
nextScreen.putExtra("eventId", "" + eventId);
startActivityForResult(nextScreen, 0);
}
答案 0 :(得分:7)
您将在GoogleMap对象(myMap)中实现onclick行为
myMap.setOnInfoWindowClickListener(
new OnInfoWindowClickListener(){
public void onInfoWindowClick(Marker marker){
Intent nextScreen = new Intent(MapsActivity.this,EventActivity.class);
nextScreen.putExtra("userId", "" + userId);
nextScreen.putExtra("eventId", "" + eventId);
startActivityForResult(nextScreen, 0);
}
}
)
答案 1 :(得分:2)
查看这篇文章,了解如何将信息或对象与标记相关联: http://bon-app-etit.blogspot.be/2012/12/add-informationobject-to-marker-in.html