调用xml里面的根布局ID ,并添加布局变化监听事件。

View rootView = view.findViewById(R.id.root_view);rootView.addOnLayoutChangeListener(this);//获取屏幕高度screenHeight = getActivity().getWindowManager().getDefaultDisplay().getHeight();//阀值设置为屏幕高度的1/3keyHeight = screenHeight / 3;

事件回调

    @Override    public void onLayoutChange(View v, int left, int top, int right, int bottom,                               int oldLeft, int oldTop, int oldRight, int oldBottom) {        //old是改变前的左上右下坐标点值,没有old的是改变后的左上右下坐标点值        //现在认为只要控件将Activity向上推的高度超过了1/3屏幕高,就认为软键盘弹起        if (oldBottom != 0 && bottom != 0 && (oldBottom - bottom > keyHeight)) {            LogUtil.i("=======软键盘弹起");            } else if (oldBottom != 0 && bottom != 0 && (bottom - oldBottom > keyHeight)) {            LogUtil.i("=======软键盘关闭");              }    }

更多相关文章

  1. Android屏蔽EditText的软键盘
  2. DisplayMetrics获取手机屏幕大小(宽高)
  3. Android webView 支持缩放及自适应屏幕
  4. android屏幕截图并通过邮件发送
  5. 【Android】 点击空白处隐藏(收起)键盘
  6. 修改android屏幕DPI
  7. android修改framework固定屏幕
  8. android中动态给EditText获得焦点并弹起键盘的方法

随机推荐

  1. Android期末复习题
  2. Android中使用Espresso进行UI测试
  3. Android之网络请求4————OkHttp源码1:
  4. Android 导入v7包常见错误
  5. 面向 Android* Jelly Bean 4.3 的英特尔
  6. 使用Scala编写Android应用程序
  7. Android中进程与进程、线程与线程之间如
  8. 如何过滤Android(安卓)offline log
  9. Android小心有坑之网络状态监听
  10. 高级 Android 开发工程师-人工智能