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