Android TextWatcher未立即触发

Android TextWatcher未立即触发,android,textwatcher,Android,Textwatcher,我在EditText上有一个TextWatcher。在PostTextChanged中,我有代码调用web服务,并获得结果。但在用户输入第一个字符后,会立即调用它。我希望它仅在用户有一段时间没有在EditText上写入内容时触发,以便用户可以搜索两个或更多字符。我怎么做呢 谢谢 将对每个添加/删除的字符调用回调 您可以自己启动延迟,并取消延迟,以便在编辑文本发生更改时再次启动它。您可以在后文本更改()上执行以下操作,以便仅在用户输入两个或更多字符后调用webservice @Override

我在EditText上有一个TextWatcher。在PostTextChanged中,我有代码调用web服务,并获得结果。但在用户输入第一个字符后,会立即调用它。我希望它仅在用户有一段时间没有在EditText上写入内容时触发,以便用户可以搜索两个或更多字符。我怎么做呢


谢谢

将对每个添加/删除的字符调用回调


您可以自己启动延迟,并取消延迟,以便在编辑文本发生更改时再次启动它。

您可以在后文本更改()上执行以下操作,以便仅在用户输入两个或更多字符后调用webservice

@Override
    public void afterTextChanged(Editable s) {
        String enteredValue  = s.toString();
        if(enteredValue != null && enteredValue.trim().length >= 2)
        {
           // Call Webservice
        }
    }

我想这样做…但有时用户只想输入一个字符,您可以在IF条件下更改值。我已将所需输入长度设置为2。在方法中:public void afterextchanged(可编辑的s),您可以检查字符串的长度,并相应地调用web服务。当然,延迟…TimerTask等等。真不敢相信我竟然没想过。谢谢