Android 禁止editText弹出软键盘(带光标) 并解决其他editText弹出软键盘后 切换回来 小键盘隐藏

转载请标明原作地址:恋梦Seven http://blog.csdn.net/u012532233/article/details/54135982

Android 禁止editText弹出软键盘 并解决其他editText弹出软键盘后 切换回来 小键盘隐藏

首先对不需要软键盘的editText进行屏蔽软键盘处理 

 //禁止软键盘弹出
        if (android.os.Build.VERSION.SDK_INT > 10) {//4.0以上 danielinbiti
            try {
                Class cls = EditText.class;
                Method setShowSoftInputOnFocus;
                setShowSoftInputOnFocus = cls.getMethod("setShowSoftInputOnFocus",
                        boolean.class);
                setShowSoftInputOnFocus.setAccessible(true);
                setShowSoftInputOnFocus.invoke(你的editText对象, false);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
然后监听该对象 获取焦点事件

//监听editTextView获取焦点
        你的editText对象.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                if (hasFocus){
                    //隐藏系统软键盘
                    InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
                    imm.hideSoftInputFromWindow(你的editText对象.getWindowToken(),0);
                }
            }
        });

完整代码

Android 禁止editText弹出软键盘(带光标) 并解决其他editText弹出软键盘后 切换回来 小键盘隐藏_第1张图片

你可能感兴趣的:(Android,记录)