如图:
7.0之前 PopupWindow showAsDropDown 显示位置
7.0 之后显示 PopupWindow showAsDropDown 显示位置
解决方法:
判断版本号
if (Build.VERSION.SDK_INT < 24) {
//v PopupWindow 显示的相对布局 mPopupWindow.showAsDropDown(v); } else { int[] location = new int[2];//定义一个数组 v.getLocationOnScreen(location); int x = location[0];// 保存x轴在页面的位置 int y = location[1];// 保存y轴在页面的位置 //v PopupWindow 显示的相对布局 ;v.getHeight() 得到相对布局的高度 mPopupWindow.showAtLocation(v, Gravity.NO_GRAVITY, 0, y + v.getHeight()); }
本文介绍了如何解决Android 7.0及以上版本中PopupWindow使用showAsDropDown方法显示位置偏移的问题。通过判断系统版本并采用不同的显示方式,确保了弹窗位置的准确性。
1万+

被折叠的 条评论
为什么被折叠?



