android - 将谷歌地图链接到 TextView 中的邮政编码

标签 android google-maps

我将屏幕分成两个线性布局。在第一个布局中,我加载了带有自定义标记的谷歌地图。在第二个中,我的地址格式为

New York, NY-20202
Aberdeen, MD-21022

如何将这些邮政编码链接到我在第一个 View 中加载的谷歌地图。我已经在 map 上有了这些标记。当用户点击任何邮政编码时,谷歌地图应该缩放到该标记。我试过 linkify 但它不会链接,除非我有完整的地址。任何建议将不胜感激。

最佳答案

这是可以做到的:

  • 将您要从中提取这些邮政编码的所有地址的 latlng 与邮政编码字符串(例如:New York, NY-20202)存储为您将在其中显示的键(假设这些字符串对于您存储的每个位置都是唯一的).

例如,它看起来像这样:

Map<String, LatLng> zipToLocationMap = new HashMap<>();

zipToLocationMap.put(YOURZIPSTRING, new LatLng(lat, lng));
  • 将 TextView 添加到 ListView 或布局时使其可点击,并添加 OnClickListener。然后在 onClick 方法内,获取 textview 的文本,并从 zipToLocationMap 获取针对该 textview 存储的 LatLng 对象。

获取 LatLng 对象后,放大 map 以使用该 latlng 坐标。

zipTextView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            latLng location = hashMap.get(zipTextView.getText());
            map.animateCamera(CameraUpdateFactory.newLatLngZoom(latlng, 2.5f)); 
            //first param is latlng object and second is zoom factor
        }
    });

关于android - 将谷歌地图链接到 TextView 中的邮政编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37175049/

相关文章:

java - Fragment webView无法检测到Google map (您的位置)

html - Google map infoWindow : different outcomes for images and text with the same css 的图像和文本样式问题

javascript - 如何删除所有与google api相关的脚本?

java - 我可以为每个 fragment 单独提供工具栏吗?如何处理抽屉导航

android - 在 react-native 中运行 android 后台任务

android volley 会自动调整大图像的大小(子样本)

google-maps - 按类别打开/关闭 Google map 标记

Android 通知操作不调用挂起的服务 Intent

android - 如何将相机移动到 android 中的 google maps v2 中的特定标记

javascript - 谷歌地图 geoXML3 : passing a placemark into it's own event listener?