android - 为地理编码结果设置自动完成超时

标签 android autocomplete timeout geocoding

管理输入超时的最佳方法是什么?

我试过这样的代码(受代码 here 启发):

public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
//...
    Message msg = Message.obtain(messageHandler, MESSAGE_TEXT_CHANGED, arg0.toString());
    messageHandler.sendMessageDelayed(msg, 1000 );
//...
}

但在日志中我可以看到地理编码器在每次按键时都会被调用,无论我输入的速度有多快。我希望拥有与 Javascript 的 setTimeout(...) 函数相同的行为。

感谢任何帮助

最佳答案

您可以在按下新键时取消之前发送给处理程序的消息:

Message msg = Message.obtain(messageHandler, MESSAGE_TEXT_CHANGED, arg0.toString());
messageHandler.removeMessages(MESSAGE_TEXT_CHANGED);
messageHandler.sendMessageDelayed(msg, 1000 );

关于android - 为地理编码结果设置自动完成超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12493729/

相关文章:

android @Suppress 错误 vs @TargetApi

android - ANDROID 中的 ONS 工具栏

android - 启动日历 Intent 后,如何使用应用程序 "go ahead"?安卓

jquery - 是否有一个 jQuery 自动完成插件可以强制选择一个项目?

c++ - 如何在 C++ 中读取最多 X 秒?

java - http连接超时问题

android - 我无法创建文件夹drawable-xxxhdpi

iphone - 如何禁用 UITextView iPhone 键盘中的自动完成功能

swift - Swift 的 "cleartimeout"是什么?

html - Angular mat-form-field 输入禁用自动完成