【问题标题】:Android google map - get map click location when marker clickedAndroid google map - 点击标记时获取地图点击位置
【发布时间】:2015-09-26 07:45:26
【问题描述】:

我有一张地图,上面有很多大型自定义标记。现在我想允许用户在地图上创建一条路径(显示为折线,然后保存为地理坐标对列表)。

如果用户点击地图,我可以使用地图的setOnMapClickedListener 方法收集这些位置。但是如果用户点击标记(setOnMarkerClickedListener),我只能检索标记位置(通常是标记的锚点位置)。

是否有可能在实际点击标记时以某种方式检索点击的地图位置?

我正在使用 SupportMapFragment。

【问题讨论】:

  • 我需要这个来自己计算正确的标记,因为当点击的标记附近有另一个制造商时,onMarkerClick 事件会给我一个错误的标记。

标签: android google-maps-android-api-2


【解决方案1】:

我认为这有点晚了。但我希望这可以帮助你。

mGoogleMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
            @Override
            public void onMapClick(LatLng latLng) {

           Toast.makeText(
                                YourActivity.this,
                                "Lat : " + latLng.latitude + " , "
                                        + "Long : " + latLng.longitude,
                                Toast.LENGTH_LONG).show();

            }
        });

        mGoogleMap.setOnInfoWindowClickListener(RegActivity.this);


    }

【讨论】:

    【解决方案2】:

    像下面这样试试

            mMap.setOnMarkerClickListener(new OnMarkerClickListener() {
                @Override
                public boolean onMarkerClick(Marker marker) {
                    LatLng position = marker.getPosition();
    
                    Toast.makeText(
                                    MainActivity.this,
                                    "Lat " + position.latitude + " "
                                            + "Long " + position.longitude,
                                    Toast.LENGTH_LONG).show();
                    return true;
                }
            });
    

    【讨论】:

    • 您没有正确阅读问题。我不需要标记的位置。我需要点击的 LatLng 位置(即使按下了标记)。
    猜你喜欢
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 2017-08-15
    • 2017-12-06
    • 2011-06-21
    • 2018-09-27
    • 1970-01-01
    • 2018-01-04
    相关资源
    最近更新 更多