我有一个mapView,我添加了一个MyLocationOverlay。当应用程序从头开始(通过onCreate)时,它显示正常。如果我退出应用程序(后退按钮)然后再次启动它(onResume),叠加层就会消失。
我试图解决这个问题超过10个小时。各种乱七八糟的重新添加叠加层。重置叠加层。更改地图位置,以便强制重绘。尝试手动使叠加层无效或强制重绘。没事了。
从代码看起来的方式来看,Overlay对象存在并且一切正常 - 但它不在地图上。
还有其他人有这个问题吗?
(Droid Incredible,2.2)
答案 0 :(得分:0)
如果我退出应用程序(后退按钮)然后再次启动它(onResume),叠加层就会消失。
BACK按钮会破坏活动。再次启动时,将再次调用onCreate()
。因此,您需要弄清楚为什么有时onCreate()
无法添加叠加层。
Here is a project显示不会出现问题的叠加层 - 也许它可以用作比较点。
答案 1 :(得分:0)
我在应用中的其他地方
_locationManager.requestLocationUpdates(provider, Vars.GPS_MIN_UPDATE_MILLISECS, Vars.GPS_MIN_UPDATE_METERS, _locationListener);
评论此问题可以解决问题。奇怪的是,这条线只在onCreate期间被调用一次,而在onResume期间根本不被调用。
但是手动监听位置更新似乎存在一些冲突(使用实现LocationListener的类)。
如果我想出更多的话,我会回到这里。
重要! - 它可能与这个问题相同:GPS not update location after close and reopen app on android