Skip to content
 
 

Repository files navigation

有一个很常见的需求,就是页面中软键盘打开时,希望能点击屏幕其他的任何位置,就能把软键盘给隐藏掉. 比如登录, 注册之类的常见页面. 在实际开发中,很多童鞋是这样做的,通过其他控件的点击事件,在onclick方法中调用隐藏软键盘的方法,从而达到相应效果,但是在页面复杂的时候,要实现的onclick方法会很多,甚至还会有逻辑处理冲突的情况.这样做就显得非常不友好.

SoftKeyboardUtil 通过一行代码实现软键盘与EditText的交互.


原理 : 就是重写Activity的dispatchTouchEvent(MotionEvent ev)方法,全局监听触摸事件, 当点击的页面时,发现如果焦点在EditView上,就把软键盘隐藏,否则就不做处理.

使用: 只要改变return的返回值即可

@Override
public View[] filterViewByIds() {
       return 传入要过滤的View[]
}

@Override
public int[] hideSoftByEditViewIds() {
   
    return 传入页面EditText的id[]
}

喜欢的朋友记得点个Star 具体详情请看文件 博客地址

About

一行代码实现Android软键盘和EditText各种交互

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages