2017-02-08 67 views
2

我有textfield has .editedChanged事件。 當用戶輸入「Boy」時,它會發送: 「B」發送給API進行搜索並等待響應。
「Bo」發送到API進行搜索並等待響應。 「男孩」發送到API進行搜索並等待響應。 問題是,它會向服務器請求3次,並從服務器獲得3次響應。按字搜索API

****我怎麼發送只有1次「男孩」發送到API搜索和等待響應?

回答

2

一個有效的方法是監視用戶輸入之間有多長時間的延遲,並且只有在用戶停止鍵入x時間後才向服務器發送請求。

例如,用戶鍵入'B'並等待0.05秒,然後鍵入'o'並等待0.08秒,然後鍵入'y'並停止輸入。

如果您的代碼僅在字符輸入之間至少有0.5秒後提交給服務器,那麼只有在輸入「男孩」後纔會向服務器請求一次。

+0

你能否加一些示例代碼? – Daniel

+0

考慮到你沒有提供任何代碼,我很難舉出一個例子。當然,我不做ios或者快速開發,但是我在過去曾經處理過與c#用戶輸入相似的問題。 – igoldthwaite

+0

我會添加一些僞代碼到我原來的答案。 – igoldthwaite