点击对话框以外的部分对话框消失的。

Android低版本里,默认情况,点击对话框以外的部分对话框不消失,但是在Android高版本里,默认情况,点击对话框以外的部分对话框消失的。这个时候如果你的程序里设置了intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);这个属性就会出现问题,这个属性的介绍官方文档里解释是If set, and the activity being launched is already running in the current task, then instead of launching a new instance of that activity, all of the other activities on top of it will be closed and this Intent will be delivered to the (now on top) old activity as a new Intent.,参考的博客有http://blog.csdn.net/getchance/article/details/8444589。

当A    Activity跳转到下一个B    Activity的时候,栈被清理了,此刻点击加载框以外的地方,加载框消失,由于B 还没有实例化,等于程序直接退出了,这样问题就出现了,我不想推出的程序退出了。纠结了好半天,开始的时候还以为是哪里抛了异常,断点调试也看不到任何信息。最后在分析了一下是通过ProgressDialog设置可以解决这个问题。

解决方法:

方法一:

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

方法二:

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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值