Android中Alertdialog对话框点击消失?

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:39   2870   0

在开发的时候遇到一个问题,就是一触摸对话框边缘外部,对话框会自动消失。这个问题很纠结啊,查找了一下发现从Android 4.0开始,AlertDialog有了变化,就是在触摸对话框边缘外部,对话框会自动消失,查了源码,找到解决办法:

研究其父类时候发现,可以设置这么一条属性,在AlertDialog.Builder.create()之后才能调用这两个方法

方法一:

setCanceledOnTouchOutside(false);调用这个方法时,按对话框以外的地方不起作用。按返回键还起作用

方法二:

setCancelable(false);调用这个方法时,按对话框以外的地方不起作用。按返回键也不起作用

这两个方法都属于Dialog方法,可查阅源码

修改后的源码如下:

case 1:
                    dismissDialog(1);
                    new Builder(SplashActivity.this).setTitle("提示").setCancelable(false)
                            .setMessage("获取软件初始化信息失败!\n请检查网络是否通畅。")
                            .setPositiveButton("确认", new OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    dialog.dismiss();
                                    SplashActivity.this.finish();
                                }
                            }).show();
                    
                    break;

转载于:https://www.cnblogs.com/yejiurui/archive/2013/03/28/2986083.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP