谷歌地图Android API v2,错误的标记位置

时间:2016-03-28 11:36:12

标签: android google-maps-markers google-maps-api-2

我有一些代码可以显示该位置的Google地图(36.1302,5.524),并在此位置标记。我用这个位置创建了标记,问题是标记显示在错误的位置。

@Override
public void onMapReady(GoogleMap googleMap) {
    LatLng latLng = new LatLng(mLatitude,mLongitude);
    MarkerOptions options = new MarkerOptions()
            .position(latLng)
            .title("I am here!");
    googleMap.addMarker(options);
    googleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
}

这是截图:http://imgur.com/pCDu3iP

1 个答案:

答案 0 :(得分:1)

这是因为您的mLatitudemLongitude值可能为0,而地图上绘制的位置为0,0

这主要是因为您在设置值之前使用mLatitudemLongitude变量。发生这种情况是因为onMap ready很早就在活动生命周期中被调用,而从传感器获取坐标需要一些时间。

尝试在onLocationChanged(Location location)回调方法中添加标记。