Android AlertDialog.Builder使用出错

在一个handler中使用了AlertDialog.Builder,第一次可以正常使用,但是退出这个activity,再次打开activity的时候就会出错
这个错误
android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@7bf25b8 is not valid; is your activity running?
怎么解决啊,真的试过很多方法了

4个回答

退出activity后,handler还是在执行中,但AlertDialog是基于activity的,我觉得是这样

解决办法: 将content改成getAplication();或者如果你有定义全局的context也可以;

原因分析: AlertDialog是被activity调用的,而当activity退出后,handler还在执行,AlertDialog就像断了线的风筝,找不到宿主,报出 is your activity running?的错误提示语句;

注: 纯属个人理解,不足之处请指正!**

楼上的正解,大概就是这个意思。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐