12

我的 MKMapView 上有一个 UISearchBar,我将使用它来搜索注释。我无法让取消按钮工作。我在 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];
}

我究竟做错了什么?

4

2 回答 2

16

您尚未分配搜索栏代表。

searchBar.delegate = self
于 2013-05-14T14:24:49.787 回答
2

请按照我发布的代码将委托设置为自我,因为搜索栏无法找到调用取消按钮方法的委托。

searchBar.delegate=self;

并在 .h 文件中将委托设置为<UISearchBarDelegate>

希望这可以帮助。

于 2013-05-14T14:24:47.510 回答