可能重复:
闪光灯在改变方向时关闭
我正在构建一个安卓应用程序。在配置更改时,闪光灯会熄灭。然后我需要再次单击 ON 按钮以使其打开。如何在我的应用程序中保持开启状态?
可能重复:
闪光灯在改变方向时关闭
我正在构建一个安卓应用程序。在配置更改时,闪光灯会熄灭。然后我需要再次单击 ON 按钮以使其打开。如何在我的应用程序中保持开启状态?
当你改变方向时,整个活动被破坏并创建一个新活动。所以发生的事情是活动正在失去闪存的当前状态并关闭。
尝试禁用清单中的方向更改。并在 Onstop 中保存 flsh 的当前状态并在 OnStart 中重置状态。
我相信这对你有用。
android:configChanges="keyboardHidden|orientation"
在 android 清单文件中添加到您的活动。
基本问题是默认情况下配置更改会重新创建 Activity,因此如果您在 Activity 中进行一些递归管理,则必须记住这一点。
有两种相反的解决方案:
通过添加您将手动处理的配置更改的 Activity 列表的清单属性来禁用配置更改时的 Activity 重新创建android:configChanges
,例如"keyboardHidden|orientation|screenSize"
(screenSize
从 Adnroid 3.1 开始需要)。在这种情况下,您可以通过覆盖方法onConfigurationChanged来处理配置更改。
通过覆盖方法onSaveInstanceState并在 bundle 内保存活动状态来处理活动的重新创建。然后在设置onCreate
参数时savedInstanceState
(不为空),您应该从该捆绑包中恢复状态(恢复闪光灯状态)。
方法的选择取决于您的活动设计。