AlertDialog.Builder dialog = new AlertDialog.Builder(this);
ListDialog.setPositiveButton(R.string.str_choose, new YesListener());
ListDialog.setNegativeButton(R.string.str_cancel, new NoListener());
dialog.show();
以上代码是我的.
我可以点击按钮关闭对话框.
但如果我想在不点击任何按钮的情况下解雇它.
我该怎么做?
解决方法:
使用处理程序延迟对Dialog.dismiss()的调用.这是一个例子.
在Activity中定义适当的实例变量:
// number of milliseconds to wait (2 seconds, in this example).
public static final int DELAYED_RESPONSE = 2000;
// define a handler as a private instance variable in your Activity.
private Handler handler = new Handler();
使用以下代码发布一个新的Runnable,它将在DELAYED_REPONSE毫秒后关闭对话框:
handler.postDelayed(new Runnable() {
@Override
public void run() {
dismissDialog();
}
}, DELAYED_RESPONSE);
请注意,此代码假定您的Activity实现了一个方法dismissDialog(),它将相应地关闭您的对话框.
标签:android,alertdialog
来源: https://codeday.me/bug/20190530/1183421.html