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

时间:2017-07-18 18:47:29

标签: android geolocation here-api

我想在Here Map上的触摸位置添加标记。此外,我想显示我触摸位置的纬度和经度。 我成功地显示了标记但是我无法在吐司消息中显示纬度和经度。

我已按照文档中的说明实现了自己的手势监听器:     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;
}

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

3 个答案:

答案 0 :(得分:4)

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

Map pixelToGeo API Reference

答案 1 :(得分:0)

@AndrewJC是正确的。但是对于初学者,我会解释一下。 SDK在其基本定位部分中具有以下实现方式

PositioningManager.OnPositionChangedListener

,它提供了一个接口onPositionUpdated。由此您可以得到GeoPosition。使用此GeoPosition获取纬度和经度。

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

答案 2 :(得分:0)

With pixelToGeo(android.graphics.PointF point)
Geocoordinate geototap = map.pixelToGeo(pointf);
Double lat = geototap.getLatitude();
Double lng = geototap.getLongitude();