如何使用 Here Map for android SDK 获取纬度和经度?

Posted

技术标签:

【中文标题】如何使用 Here Map for android SDK 获取纬度和经度?【英文标题】:How to get latitude and longitude using Here Map for android SDK? 【发布时间】:2017-07-18 18:47:29 【问题描述】:

我想在此处地图上的触摸位置添加标记。另外,我想显示我触摸该位置的纬度和经度。 我成功显示了标记但我无法在 toast 消息中显示纬度和经度。

我已经实现了自己的手势监听器,如文档中所述: public class MyOnGestureListener implements MapGesture.OnGestureListener 在这我使用了一个被覆盖的方法:

@Override
public boolean onTapEvent(PointF p) 
    // Toast.makeText(context, " Show latitude and langitude on touched location: " , Toast.LENGTH_SHORT ).show();
    return true;

在这里我想显示纬度和经度。

【问题讨论】:

【参考方案1】:

您可以使用Map#pixelToGeo(PointF point) API 从PointF 获取GeoCoordinate。然后就可以从GeoCoordinate获取经纬度值了。

Map pixelToGeo API Reference

【讨论】:

【参考方案2】:

@AndrewJC 是对的。但是对于初学者,我会解释一下。 这里SDK在其基本定位部分有以下实现

PositioningManager.OnPositionChangedListener

它提供了一个接口onPositionUpdated。从这里你可以得到GeoPosition。使用此GeoPosition 获取纬度和经度。

double latitude = geoposition.getCoordinate().getLatitude();
double longitude = geoposition.getCoordinate().getLongitude();

【讨论】:

【参考方案3】:
With pixelToGeo(android.graphics.PointF point)
Geocoordinate geototap = map.pixelToGeo(pointf);
Double lat = geototap.getLatitude();
Double lng = geototap.getLongitude();

【讨论】:

以上是关于如何使用 Here Map for android SDK 获取纬度和经度?的主要内容,如果未能解决你的问题,请参考以下文章

Google Map Api for Android

Android解析Plist文件

Chrome for Android显示自动填充即使自动填充:关闭

Arcgis runtime sdk for android第一个程序Holle Map

如何在 std::map 中使用基于范围的 for() 循环?

如何在 std::map 中使用基于范围的 for() 循环?