当前位置: 移动技术网 > 科技>操作系统>windows > Android 获取虚拟键盘高度

Android 获取虚拟键盘高度

2020年09月21日  | 移动技术网科技  | 我要评论
activity.getWindow().getDecorView().getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener(){ //当键盘弹出隐藏的时候会 调用此方法。 @Override public void onGlobalLayout() { Rect rect =
activity.getWindow().getDecorView().getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener(){
            //当键盘弹出隐藏的时候会 调用此方法。
            @Override
            public void onGlobalLayout() {
                Rect rect = new Rect();
                //获取当前界面可视部分
                activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
                //此处就是用来获取键盘的高度的, 在键盘没有弹出的时候 此高度为0 键盘弹出的时候为一个正数
                int heightDifference = activity.getWindow().getDecorView().getRootView().getHeight() - rect.bottom;
                //动态监听键盘高度,更改最底部的view的高度将其他view挤上去
                LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) postCommentBinding.bottom.getLayoutParams();
                layoutParams.height = heightDifference;
                postCommentBinding.bottom.setLayoutParams(layoutParams);
            }
        });

本文地址:https://blog.csdn.net/weixin_43942430/article/details/108706262

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网