Ho un UISearchBar nella mia interfaccia e voglio personalizzare il comportamento del piccolo pulsante di cancellazione che appare nella barra di ricerca dopo che è stato inserito del testo (è un piccolo cerchio grigio con una croce in esso, appare su il lato destro del campo di ricerca).Posso collegarmi a Clear Button di UISearchBar?
Fondamentalmente, voglio non solo cancellare il testo della barra di ricerca (che è l'implementazione predefinita) ma anche cancellare alcune altre cose dalla mia interfaccia, ma chiamando uno dei miei metodi.
Non riesco a trovare nulla nei documenti per la classe UISearchBar o il protocollo UISearchBarDelegate - non sembra possibile accedere direttamente a questo comportamento.
L'unica cosa che ho fatto notare è che i documenti hanno spiegato che il metodo delegato:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText;
è chiamato dopo che il pulsante chiaro è sfruttato.
Inizialmente ho scritto del codice in quel metodo che controllava la proprietà di testo della barra di ricerca, e se era vuoto, allora era stato cancellato e fare tutte le mie altre cose.
Due problemi che questo, però:
In primo luogo, per qualche motivo non riesco a capire, anche se dico la barra di ricerca per resignFirstResponder alla fine del mio metodo, qualcosa, da qualche parte è l'impostazione di nuovo a becomeFirstResponder. Davvero fastidioso ...
In secondo luogo, se l'utente non utilizza il pulsante Cancella e semplicemente elimina il testo nella barra utilizzando il pulsante Elimina sulla tastiera, questo metodo viene disattivato e i risultati della ricerca scompaiono. Non bene.
Qualsiasi consiglio o suggerimento nella giusta direzione sarebbe fantastico!
Grazie!
Sono abbastanza sicuro l'UISearchBar non espone è texfield ... – Jasarien