今天再开发项目输入框,页面跳转过来默认不显示输入框,
开始以为获取不到焦点,就设置获取焦点,ditText.setFocusable(true);无效,就开始问度娘。发现类似提问很多,
例如:
方式一,在layout中:
android:focusable="true" android:focusableInTouchMode="true"
方式二,在代码中:
// 获取编辑框焦点
editText.setFocusable(true);
//打开软键盘
InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
方式三
AndroidManifest 配置android:windowSoftInputMode="stateVisible|adjustResize"
。。。。。
发现没有一个好用的,要不就是没有任何反应,要不就是有弹出输入看,但是没有获取到焦点,导致输入内容不显示,还要再点击才能有反应
//其实正常获取焦点系统默认就会有弹框,所有解决获取焦点问题就解决所有了,获取焦点姿势不对努力白费呀,
正确获取焦点姿势 etSearch.requestFocus();
就这么一行代码就解决所有问题了。