Android监听软键盘弹起隐藏

来源:互联网 发布:java线程池是什么 编辑:程序博客网 时间:2024/05/21 06:23

在其他地方看到的方法 做一下记录


应用:这里在键盘弹起的时候  右边三个按钮变为一个按钮   隐藏的时候 一个按钮又变回来


第一步

   让需要这个功能的界面实现OnLayoutChangeListener接口

 OnLayoutChangeListener

第二步

   为底部栏绑定该事件:

ll_bottom.addOnLayoutChangeListener(this);

第三步:

  在重写的方法中实现对键盘事件的监听

@Overridepublic void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {        if (oldBottom != 0 && bottom != 0 && (oldBottom - bottom > 0)) {        //键盘弹起    } else if (oldBottom != 0 && bottom != 0 && (bottom - oldBottom > 0)) {        //键盘隐藏    }}

原理:其实就是判断底部栏所处的位置,如果变化后的Y坐标小于变化前的则认为键盘弹起,反之键盘隐藏


如果需求是底部栏不跟随键盘弹起呢?

有人说可以通过监听界面大小的变化来判断键盘的隐藏于显示,这里没有做尝试


原创粉丝点击