1

嗨,我有一张带有很多标记的地图。当我将标记添加到地图时,我想为每个标记添加一个 onInfoWindowClick 侦听器,其中包含单独的数据。我想使用 onInfoWindowClick 侦听器加载带有标记信息的活动。

代码不正确。创建活动时,所有侦听器同时触发,当我单击 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);

    }
4

2 回答 2

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);
    }
  }
)
于 2012-12-29T12:33:40.740 回答
2

查看这篇关于如何将信息或对象与标记相关联的帖子:http: //bon-app-etit.blogspot.be/2012/12/add-informationobject-to-marker-in.html

于 2012-12-30T17:26:58.033 回答