Android关于AlertDialog.Builder的关闭

AlertDialog.Builder无法直接使用dismiss()方法将对话框关闭的解决方法


法一:直接使用AlertDialog关闭

.setPositiveButton("取消", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialogInterface, int i) {
        AlertDialog alertDialog = builder.show();
        alertDialog.dismiss();
    }
});


法二:通过调用AlertDialog.Builder的dismiss监听事件关闭

.setPositiveButton("取消", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialogInterface, int i) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
            builder.setOnDismissListener(new DialogInterface.OnDismissListener() {
                @Override
                public void onDismiss(DialogInterface dialogInterface) {
                    dialogInterface.dismiss();
                }
            });
        }
    }
});


猜你喜欢

转载自blog.csdn.net/march0000/article/details/80193237
今日推荐