我正在开发一个带有MapActivity的Android应用程序,但我无法以适当的方式管理MapView状态。
基本上我有一个活动,当它退出时启动MapActivity,此时我需要将地图居中。所有其他时间看MapActivity我需要它基本上保持它的最后状态,而不是改变它的位置或缩放级别或任何东西。只要MapActivity没有完全被破坏,它在导航到其他活动时工作正常,但是当设备方向改变时我需要地图保持它的状态。正如大多数Android开发人员所知,当发生这种情况时,Activity被销毁并重新创建,此时我的MapView重新集中,我不希望它。
如何安排我的代码,以便在从其他活动启动MapActivity时执行我的居中例程,否则不执行我的居中例程?
答案 0 :(得分:1)
从null
返回非onRetainNonConfigurationInstance()
的内容。然后,无论您将地图置于中心位置,请致电getLastNonConfigurationInstance()
。如果是null
,则为中心;如果它不是null
,则不要居中。