在开发的时候遇到一个问题,就是一触摸对话框边缘外部,对话框会自动消失。这个问题很纠结啊,查找了一下发现从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() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();SplashActivity.this.finish();}}).show();break;

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

Android中Alertdialog对话框点击消失?相关推荐

  1. android 中怎么实现点击了对话框的按钮以后对话框不会消失,android 中怎么实现点击了对话框的按钮以后对话框不会消失...

    满意答案 henpokeyo 2014.05.17 采纳率:40%    等级:9 已帮助:667人 在android中当你点击了对话框的按钮以后 不管你是否调用了dismis()函数系统本省都会去调 ...

  2. Android中按钮的点击事件的四种写法

    如题,在Android中按钮的点击事件有四种写法,如下图. 界面为四个Button+一个TextView+一个ImageView activity_main布局文件如下: <?xml versi ...

  3. android中常见对话框之一AlertDialog

    在Android应用中,有多种对话框:Dialog.AlertDialog.ProgressDialog.时间.日期等对话框. (1)Dialog类,是一切对话框的基类,需要注意的是,Dialog类虽 ...

  4. android 中dialog对话框,Android中的对话框dialog

    普通对话框 单选对话框 多选对话框 进度条对话框 底部弹出框 1.普通对话框 this 代表当前类 最终继承Context 相当于是子类 getApplicationContext:直接返回的是Con ...

  5. Android 自定义AlertDialog对话框

    2019独角兽企业重金招聘Python工程师标准>>> 系统默认的AlertDialog,与项目的UI不统一,所以,改了一下,定义了一样式,最终效果如下图: 另外,为了尽量少改原来的 ...

  6. Android中Dialog对话框

    布局文件xml: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 x ...

  7. 解决Android中多次点击启动多个相同界面的问题

     2015.12.02 补充说明 下面方法虽然解决了连续点击问题,但也会造成页面滑动时卡顿现象(即第二次滑动时,无响应) 经过认证,发现最好的解决方法是使用手势GestureDetector.通过 ...

  8. android 中Dialog对话框及自定义Dialog的方法

    // 重写方法,让他返回Dialog.// 以下是优化代码的替换,只创建一次,每次点击使用showDialog()的方法,不用每次都创建新的,可以减少内存使用@Overrideprotected Di ...

  9. Android中如何实现多个框,在android中的对话框中设置多个文本框

    我正在创建一个对话框,就像一个包含两个文本框和两个按钮的登录屏幕.我能够创建它但我的问题是两个编辑文本框彼此重叠(第二个编辑文本框与第一个重叠).它可能是一个简单的,但因为我是新的android我坚持 ...

最新文章

  1. 将数据导入DB2带自增字段的表
  2. Java将网络地址对应的图片转成本地的图片
  3. jAVA not find main_java编程时出现Could not find the main class 怎么解决???
  4. 布式缓存系统Memcached简介与实践
  5. timerfd API使用总结
  6. Overload重載和Override重写的区别。Overloaded的方法是否可以改变返回值的类型?
  7. 2017计算机等级考试试题,2017年计算机二级考试练习题及答案
  8. 什么是安斯库姆四重奏?为什么统计分析之前必须要作图?
  9. 搭建 OpenStack 实验环境 - 每天5分钟玩转 OpenStack(16)
  10. JavaScript语言概况(一)
  11. java宠物店管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  12. Android音视频学习思路整理
  13. 如何在win10官网下载系统
  14. winHex数据恢复(第一篇)
  15. python全套教程百度网盘-Python最新全套视频教程百度网盘资源
  16. 友盟推送成功但是收不到
  17. ST-GCN/AS-GCN报错cannot import name “import_class“
  18. 通过DataEase行列权限设置实现数据权限管控
  19. cocos获取图片像素
  20. prometheus对接influxdb

热门文章

  1. 为什么有这个提示“Escape character is '^]'.”?(转载)
  2. 类中成员函数声明后面的const的含义
  3. RedHat7/CentOS7 压缩解压命令汇总
  4. leetcode算法题--球会落何处
  5. mfc将文件内容引入编辑框_南开大学黄津辉教授团队联合加拿大麦克马斯特大学Ravi教授团队发表微型MFC水质传感器实际废水检测适用性的研究...
  6. 【leetcode】581. Shortest Unsorted Continuous Subarray
  7. 常用的JavaScript模式
  8. 设计模式-生产者消费者模式
  9. 关于xml文件的声明代码导致的tomcat出现的错误
  10. Linux 3.0发布