【发布时间】:2017-03-07 11:20:44
【问题描述】:
我的应用程序有很多对话框。当我更改设备的方向时,对话框与输入的内容一起消失,因为在方向更改时会触发活动重启。我有两个选择:将每个对话框的内容保存在变量中,当活动重新启动时,我重新打开打开的那个并重新填充它。这会创建大量样板代码,并且还会与许多对话框混淆。我的另一个解决方案是在清单文件中使用android:configChanges="orientation",这将阻止活动重启。 (我的布局不会在不同的方向上改变,所以没关系)但是很多人认为这是一种不好的做法,因为它会阻止活动在其他配置更改时重新启动。
有没有办法防止活动仅在方向更改时重启,并在其他配置更改时保持?
【问题讨论】:
-
您希望您的应用同时在
landscape和portrait模式下工作吗?如果没有,您可以在清单中的每个活动标签上设置android:screenOrientation='landscape',您就完成了。
标签: android android-activity screen-orientation android-configchanges