近日遇到要检测软键盘是否显示或隐藏的问题,搜了一下网上,最后找到一个很简单的,记录一下。

activityRoot是activity的根view,就是xml里面的第一个view,给它设置一个id.

final View activityRootView = findViewById(R.id.activityRoot);activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {    @Override    public void onGlobalLayout() {        int heightDiff = activityRootView.getRootView().getHeight() - activityRootView.getHeight();        if (heightDiff > 100) { // 如果高度差超过100像素,就很有可能是有软键盘...            ... do something here        }     }});


 

更多相关文章

  1. Android(安卓)平板 控制软键盘只弹出一半,自动盯着界面中EditText
  2. android之隐藏另一个应用的图标并且禁用这个应用,不再桌面和应用
  3. EditText的使用体验
  4. 控件显示和隐藏
  5. Android之获取屏幕的三种方式
  6. android点击任意非EditText区域,隐藏键盘
  7. android ListView向上滑动隐藏标题,下拉显示标题栏
  8. 如何让Activity以全屏方式显示
  9. android输入法02:openwnn源码解析02—Keyboard和KeyboardView

随机推荐

  1. android Intent的一些用法
  2. Android:Fragment
  3. 搜藏夹
  4. Android(安卓)ViewPager实现图片滑动预览
  5. Android中的帧动画
  6. android 添加文本内容到sqlite表中
  7. android开发 权限大全
  8. Android连接网络打印机,jSocket连接网络打
  9. Android(安卓)点击查看大图(长按保存图片)
  10. android 查看软件