Ответ 1
Вы не назначили делегата панели поиска.
searchBar.delegate = self
У меня есть UISearchBar в моем MKMapView, который я собираюсь использовать для поиска аннотаций. У меня проблемы с нажатием кнопки отмены. Я создаю панель поиска в моем методе viewDidLoad следующим образом:
UISearchBar *searchBar = [[UISearchBar alloc] init];
searchBar.frame = CGRectMake(0, 0, 320,44);
searchBar.showsBookmarkButton = NO;
searchBar.showsCancelButton = YES;
[self.view addSubview:searchBar];
И я применил этот метод для кнопки отмены:
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
[searchBar resignFirstResponder];
}
Что я делаю неправильно?
Вы не назначили делегата панели поиска.
searchBar.delegate = self
Пожалуйста, установите делегат в себя, как в коде, который я опубликовал, потому что строка поиска не может найти делегата, через который он вызывает метод кнопки отмены.
searchBar.delegate=self;
и в .h файле установите делегат как <UISearchBarDelegate>
Надеюсь, что это поможет.