关于监听android 软键盘的一种可行方案

来源:互联网 发布:免费信封打印软件 编辑:程序博客网 时间:2024/05/23 11:32

问题:

1.监听到软键盘状态变化。

2.判断软键盘当前状态。

遇到这个关于软键盘的问题,寻找了许多资料。看过许多例子。有的通过layout 变化来定度,显得太牵强。


下面是我参考其他例子,加以实践,可行的办法。

rootLayout.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {@Overridepublic void onGlobalLayout() {InputMethodManager imm = (InputMethodManager) getSystemService( Context.INPUT_METHOD_SERVICE);if(imm.hideSoftInputFromWindow(edittext.getWindowToken() ,  0)){imm.showSoftInput(edittext,  0); //关闭成功,但是我只是想知道键盘的状态而不是关闭它,于是再次恢复打开状态//打开状态  }else{//关闭状态 }}} );

其中 
rootLayout 是界面的根布局
<pre name="code" class="java">imm.hideSoftInputFromWindow(edittext.getWindowToken() ,  0) 关闭键盘,如果当前键盘是打开的 那么会返回true  如果键盘是关闭的  那么会返回 false 
通过上面的办法 即可获取键盘状态。

0 0
原创粉丝点击