今天写一个“验证码输入”的活动时,需要刚进入活动时,软键盘就弹出,输完后,软键盘隐藏,看了网上的代码,发现自己存在一个误区,没有把焦点给EditText,导致进入时,软键盘不弹起。
贴一下代码:
弹起软键盘
editText.setFocusable(true);
editText.setFocusableInTouchMode(true);
editText.requestFocus();
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
- 前三行是给EditText焦点,第四行是控制软键盘的弹起
隐藏软键盘
InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
- 其中的
MainActivity.this
是根据自己当前的活动名去调整
网友评论