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

来源:互联网 发布:linux虚拟机怎么编程 编辑:程序博客网 时间:2024/06/06 14:52

转载请标明原作地址:恋梦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<EditText> 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);                }            }        });

完整代码



1 0