Android      WindowManager$BadTokenException: Unable to add window   

WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$W@1ab09b05 is not valid; is your activity running?
 
这个异常在网上已经有很多解说。最常见的情景:在Activity(或者Fragment)里创建一个PopupWindow,这个PW的context使用的是getApplicationContext(),而PW的ctx要求是其父级容器,然后就导致错误发生。
还有其它常见情况可以搜索到。
 
本文情景:在Aty里创建PW,PW中使用了Spinner。PW的ctx指定为当前Aty。
Aty可正常显示,PW可正常弹开,但点击Spinner时报错。
Spinner使用的是默认样式-下拉框。
解决:Spinner改为弹窗模式,

然后就好了,只是似乎丑了些。
 
-end

承接App定制、企业web站点、办公系统软件 设计开发,外包项目,毕设