zoukankan      html  css  js  c++  java
  • Android中Alertdialog对话框点击消失?

           在开发的时候遇到一个问题,就是一触摸对话框边缘外部,对话框会自动消失。这个问题很纠结啊,查找了一下发现从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;

     

     

  • 相关阅读:
    七、元素操作
    深入解读saltstack的安装及配置1
    Python3.x和Python2.x的区别
    用python3破解wingIDE
    saltstack配置安装的一些关键步骤及安装时各种报错的分析
    中文+django1.9+python3.5一些注意点
    整合git与wingIDE(代码下载)
    python代码编程规范
    centos7虚拟机无法上网的解决办法
    python开源包提交到pypi社区
  • 原文地址:https://www.cnblogs.com/yejiurui/p/2986083.html
Copyright © 2011-2022 走看看