Android中关于键盘的处理

来源:互联网 发布:用友u8数据库不符合 编辑:程序博客网 时间:2024/05/22 00:49

强制关闭键盘

InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);

开启软键盘

InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);if (imm.isActive()) {   imm.showSoftInput(editText, InputMethodManager.RESULT_SHOWN);   imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);}

一般的关闭软键盘

View view = activity.getWindow().peekDecorView();if (view != null) {   InputMethodManager inputmanger = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);   inputmanger.hideSoftInputFromWindow(view.getWindowToken(), 0);}

监听软键盘的弹出与关闭

final View rootView = getActivity().getWindow().getDecorView();        rootView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {            @Override            public void onGlobalLayout() {                Rect rect = new Rect();                rootView.getWindowVisibleDisplayFrame(rect);                int rootInvisibleHeight = rootView.getRootView().getHeight() - rect.bottom;                if(rootInvisibleHeight <= 100){                    Log.e("doraemon",""软键盘关闭了)                }else{                    Log.e("doraemon",""软键盘弹出了)                }            }        });


0 0
原创粉丝点击