自定义Dialog dismiss时 View not attached to window manager

来源:互联网 发布:网络婚姻游戏 编辑:程序博客网 时间:2024/05/16 05:14

自定义Dialog 用来显示加载动画,自定义dialog有个定时器,当超过一定时间的时候,会自动dismiss掉dialog,但是当页面已经关闭的时候,这两个dismiss操作会重复,所以dismiss dialog会crash报错。
View not attached to window manager

解决方法,可以设置dialog的setOwnerActivity为当前页面,在dismiss时候判断Activity是否已经关闭,

如下:
1、添加设置dialog的setOwnerActivity
context为创建dialog对象,传递进去当前页面,
dialog.setOwnerActivity((Activity) context);

2、dialogdismiss判断

//得到dialog的OwnerActivityActivity activity = dialog.getOwnerActivity();//判断页面是否关闭if ( activity != null && !activity.isFinishing()) dialog.dismiss();
原创粉丝点击