BasePopupWindow显示底部有一条缝

525 阅读1分钟

1.先看效果图

虚拟机上的效果

2.手机上的效果 我用的是一加6手机,没有测过其他手机。底部有很明显的一条缝隙

3.解决方案

注意:我这边使用的是BasePopupWindow

如果你使用的是PopupWindow 可以使用如下方式:

popupWindow.showAtLocation(tvContent, Gravity.LEFT | Gravity.TOP, 0, 0)在左上角显示

用showPopupWindow(0,DensityUtil.getDisplayHeight());方法替换showPopupWindow();

    public void addCar() {

        float fromX = 0;
        float fromY = 2.0f;
        float toX = 0;
        float toY = 0;
        Animation showAnimation = SimpleAnimationUtils.getDefaultScaleAnimation(true);
        Animation dismissAnimation = SimpleAnimationUtils.getDefaultScaleAnimation(false);
        if (fromX != 0 || fromY != 0) {
            showAnimation = createTranslateAnimation(fromX, toX, fromY, toY);
            dismissAnimation = createTranslateAnimation(toX, fromX, toY, fromY);
        }

        addCarPop.setBlurBackgroundEnable(false);
        addCarPop.setOutSideTouchable(true);
        addCarPop.setShowAnimation(showAnimation);
        addCarPop.setDismissAnimation(dismissAnimation);
        addCarPop.setPopupGravity(Gravity.BOTTOM);
//        addCarPop.showPopupWindow();
        addCarPop.showPopupWindow(0,DensityUtil.getDisplayHeight());
    }

4.最终解决了手机上的问题,但是,我刚测了虚拟机对话框直接没有了

虚拟机是如下机型

5.换了一款虚拟手机,也是正常的

android这该死的多机型,搞不懂什么意思,不管了,先放着吧,后续测试有提再说,毕竟没有测试机了,哭死~~~~~