我正在尝试将地图置于当前位置的中心,但它无效。
我有: myLocationOverlay.enableMyLocation();
并且引脚在我当前位置正确显示,但我无法动画/居中地图到那一点。
我拥有的是:
(...)
GeoPoint g = myLocationOverlay.getMyLocation();
if (g != null)
{
//it never comes to this part
mapController.animateTo(g);
mapController.setZoom(17);
}
但g
始终为空。}
我已经尝试将IF改为WHILE(并且当然更新了g)para和无限循环。
我应该以其他方式获得现有职位吗?
在我的清单中,我有以下权限:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
我正在测试Nexus One 2.3.6
感谢任何帮助
答案 0 :(得分:0)
我的建议是从Lat和Lon构建GeoPoint。
尝试这种方法。
LocationManager lm;
GeoPoint gp;
lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location lastKnownLoc = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if (lastKnownLoc != null){
int longTemp = (int)(lastKnownLoc.getLongitude()* 1000000);
int latTemp = (int)(lastKnownLoc.getLatitude() * 1000000);
gp = new GeoPoint(latTemp, longTemp);
}