java.lang.IllegalArgumentException: View=DecorView@4b56afc[] not attached to window manager

使用Dialog的时候,没少出现下面这个报错
出现的原因:因为你的Dialog的生命周期比你的activity的生命周期要长
所以,出现这个bug的时候,请检查创建这个Dialog的context所属的Activity是不是已经结束了,而dialog还在显示。
解决方法:

1.请检查,是否还未等Dialog消失就提前结束Activity。如果是,肯定是你的逻辑出问题了,还没等Dialog结束就结束Activity。

2.不管什么情况,Activity一结束,确实要关闭Dialog。那么可在onStop或者onPause里面关闭dialog

@Override
protected void onStop() {
    super.onStop();
    if(mDialog.isShowing()){
        mDialog.dismiss();
    }
}

猜你喜欢

转载自blog.csdn.net/chaogelilun/article/details/85986522