今天在做一个实例是突然想到这个问题,我不想从系统软键盘输入数据,而是要从手机上的按键上输入数据,那怎么办呢?
在网上查了一下,很多都说了同样的方法:
首先找到我们要屏蔽键盘的TextView对象,这里比如是:et
定义一个:private InputMethodManager imm;
然后再onCreate方法中:imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
如果要屏蔽软键盘,则要给et也就是TextView添加一个onClick事件,然后再事件中加入下面代码:
imm.hideSoftInputFromWindow(et_peopleShow.getWindowToken(), 0);
我开始也是跟着这么做的,结果发现第一次点击或者聚焦时,始终要产生软键盘,当按返回键退出软键盘后,再次点击,就不产生了,不知道这是什么原因,看来这个方法是不行了
后来又查了一下,看到了一句这样的代码,我就使用了一下,没想到真的可以:et.setInputType(InputType.TYPE_NULL);