我有一个关于活动和对话交互的问题。在我的 Android 应用程序中,我有一个页面允许用户扫描二维码,当扫描有效的二维码时,应用程序将打开一个对话框。问题是我想在显示对话框时禁用后台活动中的自动扫描。当对话框在前台时,有什么方法可以禁用后台活动?(即使有问题的对话是在同一个活动上?)。
我试图调用“onPause()”方法,但它不起作用..
谢谢您的帮助!
如有必要,我用部分代码编辑这篇文章:)
我有一个关于活动和对话交互的问题。在我的 Android 应用程序中,我有一个页面允许用户扫描二维码,当扫描有效的二维码时,应用程序将打开一个对话框。问题是我想在显示对话框时禁用后台活动中的自动扫描。当对话框在前台时,有什么方法可以禁用后台活动?(即使有问题的对话是在同一个活动上?)。
我试图调用“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;"
}