如何在android上显示对话框重叠保护?

如何在android上显示对话框重叠保护?,android,dialog,Android,Dialog,我的对话框继承对话框片段 当我单击按钮时,显示对话框 但我多次点击按钮。显示多个对话框。(重叠对话框) 我只想显示一个对话框 我试试这个 if (dialog.getDialog().isShowing()){ //not showing dialog } else { dialog.show(); } 但不是工作 如何在android上显示对话框重叠保护 当对话框已打开时,将其关闭 if (dialog.isShowing()){ dialog.dismiss(); }

我的对话框继承对话框片段

当我单击按钮时,显示对话框

但我多次点击按钮。显示多个对话框。(重叠对话框)

我只想显示一个对话框

我试试这个

if (dialog.getDialog().isShowing()){
    //not showing dialog 
} else {
    dialog.show();
}
但不是工作


如何在android上显示对话框重叠保护

当对话框已打开时,将其关闭

if (dialog.isShowing()){
 dialog.dismiss();
} else {
dialog.show();
}

如果你想阻止多次点击,使用类似的方法

 button.setClickable(false);
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                button.setClickable(true);
            }
        }, 2000);

延迟=2秒。

尝试定义一个变量

private int count = 0;
                if (count == 0) {
                    dialog.show();
                    count++;
                }
btnCustomDiscard.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        customDialog.dismiss();
                        count = 0;

                    }
                });
当您当时解除对话框时

private int count = 0;
                if (count == 0) {
                    dialog.show();
                    count++;
                }
btnCustomDiscard.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        customDialog.dismiss();
                        count = 0;

                    }
                });

我希望它能对您有所帮助。

我的对话框继承dialogFragment。所以不要使用dialog.isShowing()然后使用dialog.getDialog().isShowing()