前言
有关Keyboard监听事件,无非就是以下这几种情况:
1,操作显示或隐藏键盘;
2,判断当前键盘的状态;
3,键盘显示或隐藏后的拦截处理;
只要有使用到EditText,避免不了肯定会遇到以上的情况。
既然有需求,就要有实现。我今天要分享一个在github中,已经有人开源的一个库,KeyboardVisibilityEvent。
使用
dependencies {
compile 'net.yslibrary.keyboardvisibilityevent:keyboardvisibilityevent:2.1.0'
}
KeyboardVisibilityEvent.setEventListener(
this,
new KeyboardVisibilityEventListener() {
@Override
public void onVisibilityChanged(boolean isOpen) {
System.out.println("========== " + isOpen);
}
});
源码解析
其实源码比较简单,总共就6个类,所以建议大家可以去阅读看看,然后源码大概就做了以下几件事:
1,计算键盘是否打开;
2,键盘事件回调;<