这个问题之前一直困扰我,我的需求就是点击对话框外面和按返回键对话框不会消失,按返回键还好解决,拦截下返回键就OK了。

但是点击外面不好解决。之前有人说模态对话框,我看了一会,觉得不是我想要的效果。popWindow的话,必须提供父view.
重新看下api,发现设置setCancelable属性就行了。
如:
public void showNoProject(){
Builder builder = new AlertDialog.Builder(MainActivity.this)
.setMessage("您还没有项目,请先添加项目")
.setPositiveButton("去添加项目", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
})
.setNegativeButton("关闭", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.setCancelable(false);
builder.show();
}
还有另外两种实现方法
一、在oncreate()方法中设置Dialog点击屏幕不可取消,实例代码如下:
@Override
public void onCreate(Bundle icicle)
{
super.onCreate(icicle);
this.setCancelable(false);// 设置点击屏幕Dialog不消失
int style = DialogFragment.STYLE_NORMAL, theme = 0;
setStyle(style,theme);
}
二、将Activity设置成窗口的样式实现Dialog或者Popupwindow效果在开发中是很常用的一种方式,在AndroidMenifest.xml中将需要设置的Activity增加android:theme="@android:style/Theme.Dialog"属性即可。但是窗口化的Activity有个问题就是:点击窗口空白处Activity会finish。如何避免这个问题呢,办法如下:
1、resvaluesstyles.xml
<resources>
<style name="Theme.SoundRecorder" parent="@android:style/Theme.Holo.DialogWhenLarge">
<item name="android:windowCloseOnTouchOutside">false</item>
</style>
</resources>
YourActivity.this.setFinishOnTouchOutside(false);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# alertdialog不消失
# alertdialog
# 不关闭
# alertdialog消失
# Android开发实现Fragment监听返回键事件功能的方法
# Android 拦截返回键事件的实例详解
# Android 实现按两次返回键退出程序(两种方法)
# android PopupWindow点击外部和返回键消失的解决方法
# Android实现点击两次返回键退出
# Android开发返回键明暗点击效果的实例代码
# 对话框
# 这个问题
# 有个
# 两种
# 请先
# 人说
# 大家多多
# 您还没有
# 设置成
# 空白处
# 就行了
# 窗口化
# 模态
# 我看了
# 我想要
# showNoProject
# setMessage
# MainActivity
相关文章:
如何规划企业建站流程的关键步骤?
,南京靠谱的征婚网站?
建站之星后台管理:高效配置与模板优化提升用户体验
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
如何快速搭建二级域名独立网站?
建站主机服务器选型指南与性能优化方案解析
官网网站制作腾讯审核要多久,联想路由器newifi官网
如何登录建站主机?访问步骤全解析
如何高效完成自助建站业务培训?
免费制作小说封面的网站有哪些,怎么接网站批量的封面单?
已有域名和空间,如何快速搭建网站?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
免费视频制作网站,更新又快又好的免费电影网站?
大连网站设计制作招聘信息,大连投诉网站有哪些?
如何制作算命网站,怎么注册算命网站?
如何快速打造个性化非模板自助建站?
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
如何在橙子建站中快速调整背景颜色?
网站制作需要会哪些技术,建立一个网站要花费多少?
长沙做网站要多少钱,长沙国安网络怎么样?
实现虚拟支付需哪些建站技术支撑?
建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
建站主机如何安装配置?新手必看操作指南
安云自助建站系统如何快速提升SEO排名?
建站之星代理费用多少?最新价格详情介绍
建站之星Pro快速搭建教程:模板选择与功能配置指南
网站图片在线制作软件,怎么在图片上做链接?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
,购物网站怎么盈利呢?
香港服务器租用费用高吗?如何避免常见误区?
c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】
定制建站流程步骤详解:一站式方案设计与开发指南
如何在建站之星绑定自定义域名?
网站制作话术技巧,网站推广做的好怎么话术?
网站制作网站,深圳做网站哪家比较好?
建设网站制作价格,怎样建立自己的公司网站?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
如何自定义建站之星网站的导航菜单样式?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
网站制作企业,网站的banner和导航栏是指什么?
宝盒自助建站智能生成技巧:SEO优化与关键词设置指南
一键网站制作软件,义乌购一件代发流程?
建站之星如何实现网站加密操作?
三星网站视频制作教程下载,三星w23网页如何全屏?
*请认真填写需求信息,我们会在24小时内与您取得联系。