欢迎来到天天文库
浏览记录
ID:56458092
大小:15.50 KB
页数:3页
时间:2020-06-24
《解决popupWindow重叠报错问题.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、在popupWindow里面再弹出popupWindow的时候会报这样的错误ERROR/AndroidRuntime(888):android.view.WindowManager$BadTokenException:Unabletoaddwindow--tokenandroid.view.ViewRoot$W@44ef1b68isnotvalid;isyouractivityrunning?报错的意思大概就是说依赖的Activity没了。解决:方法1、不要在当前的popupWindow里面继续show一个popupWindow,应该写一个接口回调到Activity里面进行show,方
2、法2、如果只是简单的弹窗提醒的话,把第二次弹出的popupwindows改为Toast,publicclassVerifySuccessDialogextendsToast{publicVerifySuccessDialog(Contextcontext){super(context);//设置toast的ViewsetView(LayoutInflater.from(context).inflate(R.layout.include_popwindow_verify,null));//弹出位置setGravity(Gravity.CENTER,0,0);//时长setDuration
3、(Toast.LENGTH_SHORT);}}用的地方就newVerifySuccessDialog(mActivity).show();方法3、改为Dialog设置dialog的style,在Style.xml添加@drawable/trans@null4、ame="android:windowIsFloating">truetrueadjustPan定义一个Dialog类publicclassVerifySuccessDialogextendsDialog{//用来设置时间自动关闭privateintshowTime;publicVerifySuccessDialog(Contextcontext){super(cont5、ext,R.style.VerifyDialog);setContentView(R.layout.include_popwindow_verify);}publicintgetShowTime(){returnshowTime;}publicvoidsetShowTime(intshowTime){this.showTime=showTime;}}用就直接:VerifySuccessDialogdialog=newVerifySuccessDialog(mActivity);显示的地方dialog.show();
4、ame="android:windowIsFloating">truetrueadjustPan定义一个Dialog类publicclassVerifySuccessDialogextendsDialog{//用来设置时间自动关闭privateintshowTime;publicVerifySuccessDialog(Contextcontext){super(cont
5、ext,R.style.VerifyDialog);setContentView(R.layout.include_popwindow_verify);}publicintgetShowTime(){returnshowTime;}publicvoidsetShowTime(intshowTime){this.showTime=showTime;}}用就直接:VerifySuccessDialogdialog=newVerifySuccessDialog(mActivity);显示的地方dialog.show();
此文档下载收益归作者所有