//获取editTextView焦点 public static void requestFocus(EditText editText){ editText.clearFocus(); editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); }
//隐藏键盘 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(binding.searchVip.getWindowToken(), 0); //强制隐藏键盘
/** * 点击editTextView时,及获取到焦点时也会禁止弹出键盘 * @param editText */ public void disableShowInput(EditText editText) { if (Build.VERSION.SDK_INT <= 10) { editText.setInputType(InputType.TYPE_NULL); } else { (getActivity()).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); Class<EditText> cls = EditText.class; Method method; try { method = cls.getMethod("setShowSoftInputOnFocus", boolean.class); method.setAccessible(true); method.invoke(editText, false); } catch (Exception e) { } try { method = cls.getMethod("setSoftInputShownOnFocus", boolean.class); method.setAccessible(true); method.invoke(editText, false); } catch (Exception e) { } } }
//进入activity时,进制键盘弹出,只有手动点击才弹出键盘,设置此属性即可 <activity android:name=".activity.cashier.CashierActivity" android:screenOrientation="portrait" android:windowSoftInputMode="stateHidden|stateUnchanged" />