Android TV的输入框有时候需要屏蔽软键盘,只允许遥控器输入。在Android4.0以下的系统可以使用以下方法设置:
editText.setInputType(InputType.TYPE_NULL);
需要注意的是,以上的设置会把布局文件的设置的android:inputType:这个属性无效化。
Android系统在4.0以上的可以使用以下方法:
this.mActivity.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
try {
Class<EditText> cls = EditText.class;
Method setShowSoftInputOnFocus;
setShowSoftInputOnFocus = cls.getMethod("setShowSoftInputOnFocus",
boolean.class);
setShowSoftInputOnFocus.setAccessible(true);
setShowSoftInputOnFocus.invoke(mEditText1, false);
setShowSoftInputOnFocus.invoke(mEditText2, false);
} catch (Exception e) {
e.printStackTrace();
}