解决android.view.WindowManager$BadTokenException: Unable to add window -- token .
2014-05-05 14:25
609 查看
最近遇到这样的一个问题,在dialog添加
“android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@435def20 is not valid;
is your activity running? ”
这样的异常,后来经过研究查资料发现,原来当一个activity(A)依附于另一个activity(B)时,弹出对话框就会报错,原因在于activity B 有可能会被系统回收,这样就不能保证程序的正常运行。所以在A中创建Dialog时,传递的上下文对象不能是当前的activity而应该是依附的那个activity对象(该对象可以通过getParent方法得到)。
上述情况外可能还有一种情况,就是在activity还没有创建窗口,所以你是没有依附的。所以在显示dialog的时候尽量不要放在oncreat里面。要放在他外面,保证window创建完整后在显示dialog。
“android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@435def20 is not valid;
is your activity running? ”
这样的异常,后来经过研究查资料发现,原来当一个activity(A)依附于另一个activity(B)时,弹出对话框就会报错,原因在于activity B 有可能会被系统回收,这样就不能保证程序的正常运行。所以在A中创建Dialog时,传递的上下文对象不能是当前的activity而应该是依附的那个activity对象(该对象可以通过getParent方法得到)。
上述情况外可能还有一种情况,就是在activity还没有创建窗口,所以你是没有依附的。所以在显示dialog的时候尽量不要放在oncreat里面。要放在他外面,保证window创建完整后在显示dialog。
相关文章推荐
- 常见的android.view.WindowManager$BadTokenException: Unable to add window问 9b8f 题解决
- 解决android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActiv
- 【已解决】android.view.WindowManager$BadTokenException: Unable to add window
- 【已解决】android.view.WindowManager$BadTokenException: Unable to add window
- 解决: android.view.WindowManager BadTokenException:Unable to add Window.Is your activity running?
- android spinner点击android.view.WindowManager$BadTokenException: Unable to add window token is not va
- Android实现浮窗时报的android.view.WindowManager$BadTokenException: Unable to add window异常
- android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProx...
- android.view.WindowManager$BadTokenException: Unable to add window — token null
- android.view.WindowManager$BadTokenException: Unable to add window — token null is not for an applic
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
- android.view.WindowManager$BadTokenException: Unable to add window
- android-view-windowmanagerbadtokenexception-unable-to-add-window
- android.view.WindowManager$BadTokenException: Unable to add window — token null
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is yo
- android.view.WindowManager$BadTokenException: Unable to add window
- android.view.WindowManager$BadTokenException: Unable to add window
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli