2011-10-21 21 views
21

Zaimplementowałem pasek UISearch z ustawioną funkcjonalnością wyszukiwania, jednak po naciśnięciu przycisku "Szukaj" na klawiaturze, która pokazuje, nic się nie dzieje. Jak mogę dostać klawiaturę do ukrycia, gdy przycisk „Szukaj” jest wciśnięty, utrzymując tekst w pasku wyszukiwania nienaruszonym (aby zachować wyniki wyszukiwania obecny)Jak zamknąć klawiaturę po naciśnięciu przycisku "Szukaj" paska UISearch?

Odpowiedz

48

Od Text, Web and Editing Programming Guide for iOS:

To dismiss the keyboard, you call the resignFirstResponder method of the text-based view that is currently the first responder.

Powinieneś to zrobić w swoim UISearchBarDelegate:

+5

To działa tylko częściowo dla mnie, ponieważ jeśli zrezygnuję z pierwszej odpowiedzi, przycisk anulowania zostanie wyłączony ... nie pozostawi go włączonego do odbierania dotknięć. – cgossain

+0

Przycisk anulowania UISearchBar istnieje, aby umożliwić użytkownikom iPhone'a odwołanie klawiatury, ponieważ klawiatura iPhone'a nie ma przycisku zamknięcia. Jeśli potrzebujesz przycisku anulowania z innego powodu, musisz go zaimplementować samodzielnie, ponieważ program UISearchBar nie zapewnia pełnego dostępu do tej kontroli. –

+1

Mam ten komunikat o błędzie, błąd krytyczny: Indeks tablicy poza zasięgiem –

Powiązane problemy