Android 7.0 PopupWindow弹出位置的适配问题

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhourui_1021/article/details/73729655

近期需求是需要在页面标题栏中title的下方弹出PopupWindow进而做一些操作,当写完之后发现在7.0- 手机上弹出的位置是正确的但是运行在7.0系统的手机上时出现了弹出位置将穿进去的控件给覆盖了起来(这是就是7.0popupWindow位置的适配)查了许多资料进行了改正,大家有什么好的方法欢迎大家评论留言,希望此文对大家有所帮助。。。

可以直接在设置位置的地方::

if (Build.VERSION.SDK_INT < 24) {
    popWindow.showAsDropDown(parent,0,60);
} else {
    int[] a = new int[2];
    parent.getLocationInWindow(a);
    popWindow.showAtLocation(getWindow().getDecorView(), Gravity.NO_GRAVITY, 0, parent.getHeight()+a[1]+60);
    popWindow.update();
}


注意::popupWindow。update();一定要调用(我就是因为没有调用此方法导致我白白浪费半个小时的时间)。。。


方法很简单,但是对于没有处理过的童鞋可能有些难度(因为我比较渣)亲测有效(华为Mate 9,小米5等均没问题)。

展开阅读全文

没有更多推荐了,返回首页