2013-02-15 3 views
8

Я реализовал поисковую панель, которая показывает кнопку отмены, когда пользователь имеет фокус в поисковой панели. Для этого я написал searchBar.showsCancelButton = YES; в моем методе searchBarTextDidBeginEditing. В searchBarSearchButtonClicked я отставлю клавиатуру, чтобы пользователь мог просмотреть полный просмотр таблицы.UISearchBar кнопка отмены не отвечает

Проблема: в этот момент кнопка отмены поиска не отвечает. Он реагирует только после того, как поисковая панель снова начнет фокусироваться. Является ли это стандартным свойством кнопки отмены баров поиска или я что-то пропускаю в своем коде. Я хочу использовать кнопку отмены, не возвращая фокус в поисковой панели.

+1

как вы уволиться firstresponder на текстовое поле в serachbar? –

+0

вы проверили мой ответ? – Rajneesh071

+0

Его правда ... по дизайну или нет, он должен работать, если он присутствует. – Morkrom

ответ

4

Это поведение по умолчанию кнопки отмены строки поиска. Если вы хотите использовать другие функции, вы можете просто снять флажок свойства cancelbutton для строки поиска и использовать UIButton в качестве кнопки отмены.

+1

Спасибо! Я попытаюсь реализовать свою собственную кнопку отмены – JiteshW

3

Я думаю, что его поведение по умолчанию UISearchBar, когда оно получает фокус, и только тогда кнопка отмены будет включена. Вы не можете получить событие кнопки отмены UISearchBar, когда у него нет фокуса.

Так мой suggession достичь ваша задача,

  • Создать ToolBar
  • Вставка UIBarButtonItem с настраиваемое представление как UISearchBar
  • Вставить UIBarButtonItem под названием "Отмена" с действием
4

Да, вы можете сделать свою кнопку ответа UISearchBar. По умолчанию он отключен, но вы можете получить доступ к его подзону, а затем установить разрешение на отмену кнопки.

for (id object in [mySearchBar subviews]) 
{ 
    if ([object isKindOfClass:[UIButton class]]) 
    { 
     UIButton *searchBarCancelBtn = (UIButton*)object; 
     [searchBarCancelBtn setEnabled:YES]; 
    } 
} 

Выполните этот ответ, если вы хотите какой-то другой логики Custom clear button in UISearchBar text field

Смежные вопросы