Android_靠谱的监听软键盘状态的方法



public class MyActivity extends AppCompatActivity {

/**
* 当前界面中的软件盘的状态
*/
private boolean isKeyBoardOpen = false;

/**
* 监听软键盘状态
*/
private void addOnSoftKeyBoardVisibleListener() {
final View decorView = getWindow().getDecorView();
decorView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Rect rect = new Rect();
decorView.getWindowVisibleDisplayFrame(rect);
isKeyBoardOpen = (double) (rect.bottom - rect.top) / decorView.getHeight() < 0.8;
}
});
}
}
posted @ 2017-04-05 13:47  ytymz  阅读(706)  评论(0编辑  收藏  举报