Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.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
Java 显示对话框时暂停Android活动_Java_Android_Android Activity_Dialog_Onpause - Fatal编程技术网

Java 显示对话框时暂停Android活动

Java 显示对话框时暂停Android活动,java,android,android-activity,dialog,onpause,Java,Android,Android Activity,Dialog,Onpause,我有一个关于活动和对话互动的问题。在我的Android应用程序中,我有一个允许用户扫描QRCode的页面,当扫描有效QRCode时,应用程序将打开一个对话框。问题是,我想在显示对话框时禁用后台自动扫描活动当对话框位于前台时,有没有办法禁用后台活动?(即使所讨论的对话位于同一活动上?) 我试图调用“onPause()”方法,但它不起作用 谢谢你的帮助 如果有必要,我会用部分代码编辑这篇文章:)试试下面的代码: public class MyClass extends Activity {

我有一个关于活动和对话互动的问题。在我的Android应用程序中,我有一个允许用户扫描QRCode的页面,当扫描有效QRCode时,应用程序将打开一个对话框。问题是,我想在显示对话框时禁用后台自动扫描活动当对话框位于前台时,有没有办法禁用后台活动?(即使所讨论的对话位于同一活动上?)

我试图调用“onPause()”方法,但它不起作用

谢谢你的帮助

如果有必要,我会用部分代码编辑这篇文章:)

试试下面的代码:

public class MyClass extends Activity {

    private boolean mustScan = true;

    protected void onCreate(Bundle b) {
        if (mustScan) {
            // Just scan
            // Note: If you use a Thread with a while loop, use this:
            // while (true) {if (mustScan) {} }
        }
    }

    // This is the method you use to show the Dialog
    private void showResults (SomeResults here) {
        // Show the dialog
        // ...
        mustScan = false;
        // Also, in the OnClickListener of the buttons add "mustScan = true;"
    }
您不需要调用
onPause()
,平台会调用。您需要停止扫描过程,但不需要停止活动本身。