在PopupWindow中再弹出PopupWindow问题

最近在项目的开发中遇到一个需求,是一个弹出菜单点中击一个选项按钮,在选项按钮下方弹出下拉菜单。

最初想到的实现方式第一个弹出菜单用PopupWindow,第二个下拉菜单
也用PopupWindow,在第一个PopupWindow菜单中的选项按钮正下方显示第二个下拉菜单PopupWindow。但是在显示第二个下拉菜单PopupWindow中报出异常,程序crash

android.view.WindowManager$BadTokenException: Unable to add window – token android.view.ViewRootImpl $ W@382eb35 is not valid; is your activity running?

第二个PopupWindow显示如下,archor就是第一个PopupWindow的选项菜单按钮

mTwoPopupWindow.showAsDropDown(archor);

经过查找资料,发现PopupWindow中不能再弹出PopupWindow,
实际上是不能以第一个PopupWindow中的View作为archor(锚点)
来显示第二个PopupWindow。

解决方法:
第一个菜单使用Dialog来实现,第二个下拉菜单使用PopupWindow实现,这样就不会报上面的异常了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值