android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@4

在这个问题之前,我们必须了解activity的生命周期

1. onCreate:create表示创建 -------Activity还在后台,不可见

2. onStart:start表示启动 -------------Activity已经可见了,但是还没出现在前台,我们还看不到,无法与Activity交互

3. onResume:resume表示继续、重新开始-------Activity已经出现在前台并且可见

4.onPause:pause表示暂停---------------------------此时Activity在前台并可见,但是很短暂,所以不要进行耗时的操作

5.onStop:stop表示停止------------------------------此时Activity已经不可见

6.onDestroy:destroy表示毁灭---------------------这个阶段Activity被销毁,不可见

7.onRestart:restart表示重新开始-----------------Activity在这时可见



而此时我的Dialog是写在异步任务里的,异步任务是写在onCreate里面的,因此有时当异步任务快速执行完时activity还不可见,而

Dialog是依附于activity而生的

Dialog dialog = new Dialog(MainActivity.this,R.style.MyDialog);

so, 你懂了吗


   

发布了23 篇原创文章 · 获赞 11 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/u014095878/article/details/78632175