如何让PopupWindow显示在Dialog之上,我说的之上是指上层

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让PopupWindow显示在Dialog之上,我说的之上是指上层相关的知识,希望对你有一定的参考价值。

用PopupWindow确实如你描述的会有这个问题
既然你是想在Dialog之上,就可以使用windowmanager直接在最上面添加一个view,没必要死守着PopupWindow来处理。
参考技术A 1、实例化PopupWindow时,设置其width为屏幕宽度;
2、获取PopupWindow的高度:
popup.getContentView().measure(0, 0);
int height = popup.getContentView().getMeasuredHeight();
3、调用showAtLocation方法时,第一个参数传Dialog上的View,比如edit,调用方法如下:
showAtLocation(edit,Gravity.BOTTOM,0,-height);

这样弹出PopupWindow就会在屏幕下方,并且悬浮在Dialog之上而不会被Dialog遮挡

以上是关于如何让PopupWindow显示在Dialog之上,我说的之上是指上层的主要内容,如果未能解决你的问题,请参考以下文章

Android中Popupwindow和Dialog的区别

Android中Popupwindow和Dialog的区别

dialog中含有editext,dialog消失以后,系统键盘怎么不消失

android Dialog如何实现点击某一处,Dialog就显示地那个地方?

Android中Popupwindow和Dialog的区别

Android studio安装左边显示三个感叹号