在 Google 地图上制作可点击的多边形(适用于 Android) [英] Make clickable polygons on Google Maps (for Android)

查看:38
本文介绍了在 Google 地图上制作可点击的多边形(适用于 Android)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个城市各个区域的连续 LatLngs.有什么方法可以用它创建可点击的多边形.曾经的方法是

I have continuous LatLngs of various areas in a city. Is there any way I can create clickable polygons with it. Once way to go about would be to

  • 使用可用的 LatLngs 生成多边形.(我想用颜色编码在地图上直观地显示多边形)
  • 设置setOnMapClickListener.
  • 在多边形内做一个点测试.

我知道这很幼稚.有哪些替代方法?

I understand that this is very naive. What are the alternative approaches?

推荐答案

我是这样做的.

    Polygon polygon = getMap().addPolygon(new PolygonOptions()
                    .add(new LatLng(12.780712, 77.770956), new LatLng(12.912006, 77.229738), new LatLng(12.412006, 77.629738), new LatLng(12.912006, 77.229738))
                    .strokeColor(0xFF00AA00)
                    .fillColor(0x2200FFFF)
                    .strokeWidth(2)
    );


    polygon.setClickable(true);

    getMap().setOnPolygonClickListener(new GoogleMap.OnPolygonClickListener() {
        public void onPolygonClick(Polygon polygon) {

            mClusterManager = new ClusterManager<MyItem>(getApplicationContext(), getMap());
            getMap().setOnCameraChangeListener(mClusterManager);
            getMap().moveCamera(CameraUpdateFactory.newLatLngZoom(getMap().getCameraPosition().target, getMap().getCameraPosition().zoom));

            try {
                readItems();
            } catch (JSONException e) {
                Toast.makeText(getApplicationContext(), "Problem reading list of markers.", Toast.LENGTH_LONG).show();
            }

        }
    });

希望对您有所帮助.

这篇关于在 Google 地图上制作可点击的多边形(适用于 Android)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆