android window 层级的代码设置(PopUpWindow遮盖问题)
代码import androidx.core.widget.PopupWindowCompat;PopupWindowCompat.setWindowLayoutType(popupWindow, WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL + 100);AndroidX或者support包中的代码注意要在show之前调用show之后
·
代码
import androidx.core.widget.PopupWindowCompat;
PopupWindowCompat.setWindowLayoutType(popupWindow, WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL + 100);
AndroidX或者support包中的代码
注意
- 要在show之前调用
- show之后,虽然PopUpWindow的LayoutType字段值变了,但没有IPC给WindowManagerService,所以不会有实际层级调整
- PopUpWindow默认LayoutType都是
public static final int FIRST_SUB_WINDOW = 1000;
- Type虽然相同,但最近showAtLocation的在最上边
- LayoutType 100 在 10 的上面
- 即数值越小,Window越靠近屏幕
- 锁屏就是基于这个原理,把LayoutType层级设高
- 当然 最小的数值是需要权限的,否则盖过锁屏了
更多推荐
已为社区贡献1条内容
所有评论(0)