我的应用程序中有一个MapView,我可以毫无问题地加载它,并将位置图钉放在某个经度和纬度上。
这是我使用的代码:
private MapView mapView;
private GoogleMap gmap;
gmap = googleMap;
gmap.setMinZoomPreference(17);
UiSettings uiSettings = gmap.getUiSettings();
uiSettings.setCompassEnabled(true);
uiSettings.setZoomControlsEnabled(true);
LatLng ny = new LatLng(40.7143528, -74.0059731);
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(ny);
gmap.addMarker(markerOptions);
gmap.moveCamera(CameraUpdateFactory.newLatLng(ny));
效果很好。地图加载和手势并启用。引脚也会在指定的纬度和经度处放置。
但是,我想改变这一点。我希望根据地点名称(例如帝国大厦(或 URL(http://maps.google.com/?q=Empire%20State%20Building(删除图钉。但是,在花时间浏览互联网和文档后,似乎设置引脚的唯一方法是通过 LatLng 对象。
虽然我对使用Lat and Long没有强烈的反对意见,但我更喜欢使用可识别名称或地点本身的URL,因为它会使数据库更易于阅读。
有没有人使用名称或谷歌地图网址成功设置图钉?
我可以看到的一种解决方案是使用地理编码 API 将地点名称转换为经度。
使用地理编码,我们将能够将地址(如"加利福尼亚州山景城圆形剧场公园大道 1600 号"(转换为地理坐标(如纬度 37.423021 和经度 -122.083739(,您可以使用该信息在地图上放置标记。