Android修改源码解决Alertdialog触摸对话框边缘消失的问题
更新时间:2013年11月29日 16:00:16 作者:
在开发的时候遇到一个问题,就是一触摸对话框边缘外部,对话框会自动消失。这个问题很纠结啊,查找了一下发现从Android 4.0开始,AlertDialog有了变化,就是在触摸对话框边缘外部,对话框会自动消失,查了源码,找到解决办法如下
研究其父类时候发现,可以设置这么一条属性,在AlertDialog.Builder.create()之后才能调用这两个方法
方法一:
setCanceledOnTouchOutside(false);调用这个方法时,按对话框以外的地方不起作用。按返回键还起作用
方法二:
setCanceleable(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;
您可能感兴趣的文章:
- Android实现点击AlertDialog上按钮时不关闭对话框的方法
- Android中AlertDialog各种对话框的用法实例详解
- Android使用AlertDialog实现的信息列表单选、多选对话框功能
- Android中AlertDialog 点击按钮后不关闭对话框的功能
- Android 自定义AlertDialog对话框样式
- Android对话框AlertDialog.Builder使用方法详解
- ANDROID中自定义对话框AlertDialog使用示例
- android自定义AlertDialog对话框
- Android Alertdialog(实现警告对话框)
- Android开发之AlertDialog实现弹出对话框
相关文章
Android App开发中将View或Drawable转为Bitmap的方法
这篇文章主要介绍了Android App开发中将View或Drawable转为Bitmap的方法,其中View转换时作者特别提到了getDrawingCache=null问题的解决方法,需要的朋友可以参考下2016-03-03
Android 中CheckBox的isChecked的使用实例详解
这篇文章主要介绍了Android 中CheckBox的isChecked的使用实例详解的相关资料,需要的朋友可以参考下2017-04-04
Android SDK Manager国内无法更新的解决方案
本文主要介绍Android SDK Manager国内无法更新的解决方案,这里提供了解决方法,及简单说明实现流程,有兴趣的小伙伴可以参考下2016-09-09
图解Windows环境下Android Studio安装和使用教程
这篇文章主要介绍了图解Windows环境下Android Studio安装和使用教程的相关资料,需要的朋友可以参考下2015-12-12
Android如何使用圆形揭露动画巧妙地隐藏或显示View详解
Android开发中会遇到不少显示和隐藏的问题,下面这篇文章主要给大家介绍了关于Android如何使用圆形揭露动画巧妙地隐藏或显示View的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下2022-04-04


最新评论