Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 接近传感器关闭屏幕时活动消失_Android - Fatal编程技术网

Android 接近传感器关闭屏幕时活动消失

Android 接近传感器关闭屏幕时活动消失,android,Android,我有一个活动对话框,当活动接收到自定义广播意图过滤器时显示该对话框。应用程序使用接近传感器关闭屏幕。但当屏幕再次打开时,对话框消失。如何防止对话框消失?在“活动”中使用标志 当屏幕关闭时,只需重新创建活动 然后调用onCreate方法,以便活动自行重新初始化它,并重新加载所有内容 如果在活动中设置configChanges标志,则不会重新创建该活动,只需继续 这是您定义活动的清单文件 <activity android:name=".MyActivity"

我有一个活动对话框,当活动接收到自定义广播意图过滤器时显示该对话框。应用程序使用接近传感器关闭屏幕。但当屏幕再次打开时,对话框消失。如何防止对话框消失?

在“活动”中使用标志

当屏幕关闭时,只需重新创建活动 然后调用onCreate方法,以便活动自行重新初始化它,并重新加载所有内容

如果在活动中设置configChanges标志,则不会重新创建该活动,只需继续

这是您定义活动的清单文件

<activity
            android:name=".MyActivity"
            android:configChanges="orientation|keyboardHidden|keyboard"
            android:label="MYLabel" >
        </activity>

yourDialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG\u KEEP\u SCREEN\u打开)


当您的对话框可见时,这将不会使屏幕关闭。

有效。谢谢但我要求屏幕关闭,并在对话框唤醒时再次显示对话框。以意外的方式扰乱用户交互工作流是一个糟糕的策略。我建议不要使用这种解决方案。当屏幕关闭时,您的活动(可能)将被关闭。并在正常的android活动生命周期中返回时重新启动。要保留对话框,您需要在活动关闭时保存其状态,并在其返回时重新显示。您可以通过重新创建对话框来演示这一点again@STTLCU是的,让用户做任何他/她想做的事情。务实地处理它。这肯定比以前好