Android 软键盘的监听(监听高度,是否显示)
来源:互联网 发布:成都尚学堂怎么样 知乎 编辑:程序博客网 时间:2024/06/06 08:32
Android官方本身没有提供一共好的方法来对软键盘进行监听,但我们实际应用时,很多地方都需要针对软键盘来对UI进行一些优化。
以下是整理出来的一个不错的方法,大家可以使用。
public class SoftKeyboardUtil {public static void observeSoftKeyboard(Activity activity, final OnSoftKeyboardChangeListener listener) {final View decorView = activity.getWindow().getDecorView();decorView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { int previousKeyboardHeight = -1;@Overridepublic void onGlobalLayout() {Rect rect = new Rect();decorView.getWindowVisibleDisplayFrame(rect);int displayHeight = rect.bottom - rect.top;int height = decorView.getHeight(); int keyboardHeight = height - displayHeight; if (previousKeyboardHeight != keyboardHeight) { boolean hide = (double) displayHeight / height > 0.8; listener.onSoftKeyBoardChange(keyboardHeight, !hide); } previousKeyboardHeight = height;}});}public interface OnSoftKeyboardChangeListener {void onSoftKeyBoardChange(int softKeybardHeight, boolean visible);}}
3 2
- Android 软键盘的监听(监听高度,是否显示)
- Android 软键盘的监听(监听高度,是否显示)
- Android软键盘的隐藏显示监听
- Android监听键盘是否弹出,以及获取软键盘的高度
- Android监听键盘是否弹出和获取软键盘的高度
- android监听软键盘,计算软键盘高度
- 软键盘的弹出隐藏监听及软键盘高度
- Android 监听软键盘显示隐藏
- android中监听软键盘的弹出与隐藏,并获取软键盘的高度
- Android监听软键盘的显示与隐藏
- Android监听软键盘的显示与隐藏
- android 对软键盘的显示和消失监听
- Android 监听软键盘的显示与隐藏
- android 监听软键盘的显示与隐藏
- Android 监听软键盘的显示与隐藏
- Android监听软键盘的显示与隐藏
- 获得软键盘高度 监听软键盘
- Android - 监听软键盘状态以及获取软键盘的高度
- ElasticSearch查询字符串
- TP框架中隐藏的预处理函数,前置钩子
- bzoj1013: [JSOI2008]球形空间产生器sphere
- appium-3 事件
- Linux单机TCP并发连接
- Android 软键盘的监听(监听高度,是否显示)
- 如何将资源id转换为Uri,适用于Fresco.setImageURI();
- windows dumpbin工具
- ASP.NET数据库连接字符串
- 朝花夕拾——finally/final/finalize拨云雾见青天
- HDU 5316 Magician 2015 Multi-University Training Contest 3 1001 线段树
- 解决IE下a标签点击有虚线边框的问题
- [线段树] poj3468 A Simple Problem with Integers
- QTP/UFT以XPath作为属性标识对象