[英]KeyEvent is triggering 2 events - can I add a delay?
因此,我在用户名和密码字段中输入以下代码。 我想让Android中的Enter键将光标移至“密码”字段。 这是可行的,但是我的代码还触发了密码字段来调用signUpOrLogin函数。
有没有办法增加延迟或解决这个问题的方法?
if (usernameField.hasFocus() && keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN){
passwordField.requestFocus();
}
if (passwordField.hasFocus() && keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN){
signUpOrLogin(v);
}
您可以将isEmpty()
添加到if语句中,以检查是否已使用TextField
。 这样可以使该字段必须具有值才能执行该语句。 您的代码如下所示:(请注意,我尚未对此进行测试)
if (!usernameField.getText().isEmpty() && usernameField.hasFocus() && KeyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN){
passwordField.requestFocus();
}
if (!passwordField.getText().isEmpty() && passwordField.hasFocus() && keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN){
signUpOrLogin(v);
}
希望这可以帮助。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.