当用户按键盘上的 Enter 键时,我将焦点从一个 AutoCompleteTextView 切换到另一个 AutoCompleteTextView。问题是当下一个 AutoCompleteTextView 获得焦点时键盘总是隐藏。有什么办法可以防止这种情况发生吗? 这是我用来切换焦点的代码:
field1.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
field1.dismissDropDown();
field2.requestFocus();
return true;
}
return false;
}
});
我没有在声明 field1 和 field2 的 XML 文件中使用任何 imeOptions。
最佳答案
是的,切换焦点会使键盘消失。一个快速修复方法是以编程方式告诉键盘保持可见:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
关于java - Android - requestFocus 关闭键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24869255/