Ritardi UISearchBar textDidChange per le chiamate remote
-
20-09-2019 - |
Domanda
Sto cercando di stabilire come raggiungere UISearchBar
di ritardare chiamando textDidChange
fino a pochi millisecs sono passati. Il mio obiettivo è quello di aggregare più voci della tastiera in una chiamata di servizio Web remoto .. Come ce l'ho adesso mi chiamare il server ogni battitura e questo è troppo.
Se non c'è qualche modo all'interno di uno dei metodi UISearchBar
delegati ... c'è qualche altro modo per ottenere lo stesso risultato ... vale a dire solo che non chiamare il server fino a quando l'utente ha messo in pausa di entrare chiavi?
Ho utilizzato questo metodo delegato:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
Soluzione
Sì, è possibile utilizzare un NSTimer.
Fare questo:
- Crea un NSTimer che chiama la chiamata servizio Web remoto ed eseguire quando l'utente inizia a digitare.
- Ogni volta che l'utente inserisce una chiave hanno il reset del timer e ricominciare.
- Se l'utente ha interrotto digitando il NSTimer sparerà la chiamata servizio Web.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow