Android监听键盘是否弹出,以及获取软键盘的高度
2015-03-24 17:25
330 查看
网上介绍过监听键盘是否弹出的方法,我自己也是尝试过,不是很好用,今天发现了一种比较好的监听键盘是否弹出的方法,用起来十分简单,同时也可以通过此方法获取到键盘的高度
使用起来很简单只需判断键盘高度是否为0 就可以知道键盘是否弹出了。
getDecorView() 获取的是整个应用的view 包括标题栏,但是不包括状态栏,r.top就是状态栏的高度。
et.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener(){ //当键盘弹出隐藏的时候会 调用此方法。 @Override public void onGlobalLayout() { Rect r = new Rect(); //获取当前界面可视部分 MainActivity.this.getWindow().getDecorView().getWindowVisibleDisplayFrame(r); //获取屏幕的高度 int screenHeight = MainActivity.this.getWindow().getDecorView().getRootView().getHeight(); //此处就是用来获取键盘的高度的, 在键盘没有弹出的时候 此高度为0 键盘弹出的时候为一个正数 int heightDifference = screenHeight - r.bottom; Log.d("Keyboard Size", "Size: " + heightDifference); } });
使用起来很简单只需判断键盘高度是否为0 就可以知道键盘是否弹出了。
getDecorView() 获取的是整个应用的view 包括标题栏,但是不包括状态栏,r.top就是状态栏的高度。
相关文章推荐
- Android监听键盘是否弹出,以及获取软键盘的高度
- Android监听键盘是否弹出和获取软键盘的高度
- android 自定义View在弹出的软键盘之上,以及测量软键盘高度和监听软键盘状态
- android 自定义View在弹出的软键盘之上,以及测量软键盘高度和监听软键盘状态
- Android - 监听软键盘状态以及获取软键盘的高度
- android中监听软键盘的弹出与隐藏,并获取软键盘的高度
- android中隐藏与显示软键盘以及不自动弹出键盘的方法
- Android隐藏以及显示软键盘以及不自动弹出键盘的方法
- android隐藏以及显示软键盘以及不自动弹出键盘的方法
- Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的减少
- Android 软键盘的监听(监听高度,是否显示)
- iOS获取键盘弹出高度,监听键盘弹出退出
- android自定义软键盘名字以及监听键盘事件
- iOS键盘弹出高度以及动画时间获取
- android隐藏以及显示软键盘以及不自动弹出键盘的方法
- 详解Android中获取软键盘状态和软键盘高度
- android隐藏以及显示软键盘以及不自动弹出键盘的方法
- Android 软键盘的监听(监听高度,是否显示)
- 【Android】ListView监听上下滑动(设置滚动监听判断ListView的滚动方向同时获取屏幕高度、ListView实际高度,判断是否需要展示返回顶部按钮(具体逻辑请看代码--附有详细注释)。
- android隐藏以及显示软键盘以及不自动弹出键盘的方法