如何获得标记的值?

时间:2014-04-16 17:46:01

标签: android google-maps android-fragments map android-maps-v2

嗨,有一个创建应用程序的新手想知道有没有办法将选定标记的信息提供给另一个活动。?

已经阅读了一些可以解决问题的文章,但没有阅读能够清楚了解情景的文章。 任何正确方向的帮助都会很棒。

3 个答案:

答案 0 :(得分:0)

您需要将InfoWindowAdapter设置为具有getInfoWindow处理程序Marker参数的地图。样品:

GoogleMap map;
map.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() {
    @Override
    public View getInfoWindow(Marker marker) {
        //marker is selected marker
        View popup = getLayoutInflater().inflate(R.layout.somePopupXml, null);
        //code to fill popup with data
        return popup;
    }

    @Override
    public View getInfoContents(Marker marker) {
        return null;
    }
});

答案 1 :(得分:0)

标记是最后一个类,你不能用你的类派生,所以你有两个选择:使用一个hashmap与你的对象标记对象,当有一个onClik时选择正确的对象标记并将id发送到第二个活动或在信息窗口中使用您的ID。在第二种情况下,当单击标记时,您可以重新解析信息窗口,获取ID并将其发送到第二个活动。

答案 2 :(得分:0)

我不确定这是否会回答你的问题,因为我也是第一次在android中使用地图,但是你可以点击一个点击标记的标题ETC到变量。

'@Override
    public boolean onMarkerClick(final Marker marker) {
        // TODO Auto-generated method stub
        title = marker.getTitle();              
        current=marker.getPosition();

    return true;
    }'

如果您需要多个标记,则可以执行if语句并将该位置保存为新变量然后递增它。