-1

我的 Activity 有一个带有 ActionBar 的 listView。长按列表项时,会触发上下文动作模式。但是,在屏幕旋转过程中,动作模式会丢失。

我知道我可以通过在 onsaveInstanceState/restoreInstancestate 方法中重新触发 Action 模式来恢复状态。但是我想知道Action模式中有没有内置方法可以恢复其状态?

谢谢!

4

1 回答 1

-2

声明android:configChangesinAndroidManifest.xml将指示 Activity Manager 不为这些配置更改重新创建您的活动(默认行为),在这种情况下,您的操作栏状态将被重置。

android:configChanges="orientation|screenSize"

默认情况下,此声明会将下一个生命周期回调路由到onConfigurationChanged(), then onResume()

如果您的应用程序在特定配置更改期间不需要更新资源,并且您有性能限制要求您避免重新启动活动,那么您可以声明您的活动自己处理配置更改,这会阻止系统重新启动您的活动。

来源:http: //developer.android.com/guide/topics/resources/runtime-changes.html

于 2015-02-26T02:30:37.050 回答