地图标记未指向确切位置

时间:2013-06-21 01:56:51

标签: android google-maps

所以我将地图中的标记存储到sqlite数据库中。我试图通过纬度和经度查询标记。因此,对于测试,我将标记添加到特定位置。当我检查标记位置时,它给了我另一个位置。造成这种情况的原因是什么?

    private void drawMarker(LatLng point, String title, String snippet){
    // Creating an instance of MarkerOptions
    MarkerOptions markerOptions = new MarkerOptions();
    // Setting latitude and longitude for the marker
    LatLng l = new LatLng(37.52100000000001, -77.44800000000001);
    markerOptions.position(l);
    markerOptions.title(title);
    markerOptions.snippet(snippet);
    // Adding marker on the Google Map
    googleMap.addMarker(markerOptions); 
}

这是提取标记位置的代码

    googleMap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {

        @Override
        public void onInfoWindowClick(Marker marker) {
      marker1 = marker;     
      LatLng mlatlong = marker1.getPosition();
      markerLat = Double.toString(mlatlong.latitude);
      markerLng = Double.toString(mlatlong.longitude);
      latitude = mlatlong.latitude;
      longitude = mlatlong.longitude;
      Log.i("Marker", mlatlong.latitude +","+mlatlong.longitude);
      markerDialog();
        }

    });

这给了我这个位置 06-20 21:53:52.447:I / Marker(15221):37.52100000569583,-77.44800008833408

1 个答案:

答案 0 :(得分:1)

在Java和大多数其他语言中,double不会存储为精确值。

您可以阅读更多here

此外,您发布的地点extremely close to each other并不重要。