如何仅在初始加载时将MapView置于中心位置?

时间:2011-03-24 16:55:55

标签: android android-activity state android-mapview mapactivity

我正在开发一个带有MapActivity的Android应用程序,但我无法以适当的方式管理MapView状态。

基本上我有一个活动,当它退出时启动MapActivity,此时我需要将地图居中。所有其他时间看MapActivity我需要它基本上保持它的最后状态,而不是改变它的位置或缩放级别或任何东西。只要MapActivity没有完全被破坏,它在导航到其他活动时工作正常,但是当设备方向改变时我需要地图保持它的状态。正如大多数Android开发人员所知,当发生这种情况时,Activity被销毁并重新创建,此时我的MapView重新集中,我不希望它。

如何安排我的代码,以便在从其他活动启动MapActivity时执行我的居中例程,否则不执行我的居中例程?

1 个答案:

答案 0 :(得分:1)

null返回非onRetainNonConfigurationInstance()的内容。然后,无论您将地图置于中心位置,请致电getLastNonConfigurationInstance()。如果是null,则为中心;如果它不是null,则不要居中。