Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Android简单的动态控制软键盘的显隐

Android简单的动态控制软键盘的显隐:隐藏软键盘方法:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
源码注释:/** Window flag: invert the state of {@link #FLAG_NOT_FOCUSABLE} with         * respect to how this window interacts with the current method.  That         * is, if FLAG_NOT_FOCUSABLE is set and this flag is set, then the         * window will behave as if it needs to interact with the input method         * and thus be placed behind/away from it; if FLAG_NOT_FOCUSABLE is         * not set and this flag is set, then the window will behave as if it         * doesn"t need to interact with the input method and can be placed         * to use more space and cover the input method.         */public static final int FLAG_ALT_FOCUSABLE_IM = 0x00020000;
该方法会导致界面里面所有需要弹出软键盘的控件均无法显示软键盘。
当然当我们需要清除该状态时,可以在输入控件的Touch事件里面进行解除EditText.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubgetWindow().clearFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);return false;}});