我的位置叠加消失了,不存在onResume

时间:2011-01-10 00:55:19

标签: android google-maps android-mapview mylocationoverlay

我有一个mapView,我添加了一个MyLocationOverlay。当应用程序从头开始(通过onCreate)时,它显示正常。如果我退出应用程序(后退按钮)然后再次启动它(onResume),叠加层就会消失。

我试图解决这个问题超过10个小时。各种乱七八糟的重新添加叠加层。重置叠加层。更改地图位置,以便强制重绘。尝试手动使叠加层无效或强制重绘。没事了。

从代码看起来的方式来看,Overlay对象存在并且一切正常 - 但它不在地图上。

还有其他人有这个问题吗?

(Droid Incredible,2.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