需求:在键盘弹出时需要相应操作
解决:监听键盘是否弹出,同时还可以获取到键盘的高度
实现:

 edittext.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {            @Override            public void onGlobalLayout() {                Rect rect = new Rect();                mainActivity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);//获取当前界面可视部分                int screenHeight = mainActivity.getWindow().getDecorView().getRootView().getHeight();//获取屏幕高度                int heiDifference = screenHeight - rect.bottom;//获取键盘高度,键盘没有弹出时,高度为0,键盘弹出时,高度为正数                if (heiDifference == 0) {                    //todo:键盘没有弹出时                } else {                   //todo:键盘弹出时                }            }        });

getDecorView() 获取的是整个应用的view 包括标题栏,但是不包括状态栏,r.top就是状态栏的高度
转自https://www.cnblogs.com/gejs/p/4363460.html

更多相关文章

  1. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
  2. Android屏幕分辨率正确获取及PX,DPI,DP,SP等的对应关系
  3. android 获取唯一标识
  4. android拍照与读取相册
  5. Android(安卓)热点开关状态的判断和获取热点ssid
  6. Android软键盘适配问题
  7. AIR Native Extension的使用(Android)一 : 打包ane
  8. android之BitMap
  9. Android中GPS定位的简单应用

随机推荐

  1. Bong!5 款超牛逼的 Jupyter Notebook 插件
  2. 为什么现在的开发都要懂测试了?没错是的,下
  3. JavaScript 逆向爬取实战(下)
  4. 骚操作!嵌套 JSON 秒变 Dataframe!
  5. PMP证书获得历程
  6. 如何实时主动监控你的网站接口是否挂掉并
  7. 再见 VBA!神器工具统一 Excel 和 Python
  8. Python分析5000+抖音大V,发现大家都喜欢这
  9. 原来炫酷的可视化地图,用Python就能搞定!
  10. 太骚了!Python模型完美切换SAS,还能这么玩