
在安卓7.0及其以上系统中,popupwindow设置popupWindow.showAsDropDown(pageHeadL, 0, 0)以后,会在安卓系统中全屏显示,不能达到在某个控件的下面。解决这种问题是重写popupwindow中的showAsDropDown方法。
####代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
PopupWindow popupWindow = new PopupWindow(vkey, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT) { * 在安卓7.0以后popupwindow会因为弹出层设置显示比例导致不能显示在某个控件的后面,下面的方法 * 重写以后可以 * @param anchor */ public void (View anchor) { if (Build.VERSION.SDK_INT >= 24) { Rect rect = new Rect(); anchor.getGlobalVisibleRect(rect); int h = anchor.getResources().getDisplayMetrics().heightPixels - rect.bottom; setHeight(h); } super.showAsDropDown(anchor); } };
|
近期评论