阅读量:1
要实现AlertDialog点击按钮时不关闭对话框,可以通过设置DialogInterface.OnClickListener的监听器,在监听器中进行处理。
首先,创建一个AlertDialog实例,并设置点击事件监听器:
AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("提示"); builder.setMessage("是否确认操作?"); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 处理点击确定按钮的事件 // 不调用dialog.dismiss()方法,对话框不会关闭 } }); builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 处理点击取消按钮的事件 dialog.dismiss(); // 关闭对话框 } }); AlertDialog dialog = builder.create(); dialog.show();
在点击确定按钮时,处理完事件后不调用dialog.dismiss()
方法,对话框就不会关闭。而点击取消按钮时,可以调用dialog.dismiss()
方法来关闭对话框。
注意:在点击确定按钮的事件处理方法中,如果不调用dialog.dismiss()
方法关闭对话框,需要在合适的时机手动调用dialog.dismiss()
方法来关闭对话框,否则对话框将一直显示在屏幕上。