gpt4 book ai didi

android - 如何保持对当前 EditText 的关注?

转载 作者:行者123 更新时间:2023-11-30 05:11:41 25 4
gpt4 key购买 nike

我的 Fragment 中有 3 个 EditText(editText1、editText2 和 editText3)。当我在软键盘上单击“下一步”时,焦点当前转到下一个 EditText。我还检查这些编辑框的内容是否有效(比如电子邮件是否有效等)。让我们假设 checkEditText_() 正常工作。

对于 editText1,我解决了这个问题:

editText1.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_NAVIGATE_NEXT)) {
if (!checkEditText1()) { // editText1 content fail
editText1.clearFocus();
editText1.requestFocus();
edi tText1.selectAll();
} else if (!checkEditText2()) { // editText2 content fail
editText1.clearFocus();
editText2.requestFocus();
} else if (!checkEditText3()){ // editText3 content fail
editText1.clearFocus();
editText3.requestFocus();
}
return true;
}
return false;
}
});

对于editText1来说,当它自己的内容不成功时,它应该保留下来,并保持对自己的关注。否则,它将关注其他两个剩余的 editText,以促使用户更正那里的错误。

但是当 checkEditText1() 失败时,它不像第一个 if 子句那样聚焦......

如何正确地保留在当前的EditText中?

最佳答案

使用这个:

     android:imeOptions="actionDone"

无需监听任何keyEvent。

关于android - 如何保持对当前 EditText 的关注?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53615098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com