2013-06-28 49 views
0

在我的Android应用程序中,我试图单击一个按钮,它会执行一些计算结果的警报对话框。询问用户是否。 单击yes执行操作并且不关闭警报对话框。警报对话框正在打开两次应用程序的结果崩溃

问题是,当我点击按钮的速度非常快时,它会打开两个警告框,在第一个警报对话框中按yes会执行其操作,但在第二个导致崩溃时按yes。

什么是解决此问题的最佳方法。其实这是简单的主观逻辑,这就是为什么我不在这里添加代码。

回答

5

只需添加:

if(dialog != null && !dialog.isShowing()) { 
    dialog.show(); 
} 

为了您的onClick()方法。这将检查是否显示该对话框,并且只在该对话框不可见时才显示该对话框。

您必须将dialog替换为所调用的任何实例。

+2

'if(dialog!= null &&!dialog.isShowing()){...}' – SK9

+0

@ SK9啊是的。在这里,空检查会更好。谢谢。 –

+0

AlertDialog.Builder mEAlert = new AlertDialog.Builder(mHomeActivity,android.R.style.Theme_Holo_Light_Dialog_MinWidth);我创建了这样的提醒对话框。现在如何更改您提供的答案? – Bora

相关问题