public boolean onTap(GeoPoint p, MapView mapView) {

        String msg;
        double d1 = p.getLatitudeE6()/1E6;
        double d2 = p.getLongitudeE6()/1E6;
        String str1 = Location.convert(d1, Location.FORMAT_DEGREES);
        String str2 = Location.convert(d2, Location.FORMAT_DEGREES);
        msg = "x = "+ p.getLatitudeE6() +
                ", y = "+ p.getLongitudeE6();
        Toast.makeText(MapViewActivity.this, msg, Toast.LENGTH_LONG).show();
        return true;
    }

我刚刚制作了这个代码来查看纬度和经度,其中手指在 android 设备上点击。

我猜我的代码有问题或者提供的函数“getLatitudeE6”有错误

谷歌。如你所知,纬度只能从 -90 度到 +90 度,但是当我点击周围的位置时

antarica,尤其是下面,我只看到-80。换句话说,纬度限制在 -80 到 80 之间

度。这是我的错还是谷歌的错?

最佳答案

如果您查看 API 文档,它会说:



这是因为在极点附近,墨卡托投影会失去准确性。

关于java - getLatitudeE6() 返回错误值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6892256/

10-14 05:46