0

我在 UITableView 中显示了一些列表。出于排序目的,我使用了 UISearchBar。我得到了一些取消按钮的奇怪行为

重现步骤

  1. 搜索东西
  2. 请注意,在您搜索时,有一个“取消”按钮可以摆脱屏幕键盘。
  3. 现在挖掘其中一个搜索结果的详细信息
  4. 然后回去
  5. 搜索结果还在,搜索栏还在,但是“取消”按钮不见了。
  6. 因此,如果不关闭应用程序并重新打开,就无法移除屏幕键盘。

但这些情况只发生在 iphone 上而不是模拟器上。返回第一个屏幕时,我可以看到取消按钮。

我使用了这些代表:

- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{   
  searchBar.text = nil; 
  [searchBar resignFirstResponder];
  isSearch = NO;
}

- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar
{  
  searchBar.showsScopeBar = NO;  
  [searchBar sizeToFit];  
  [searchBar setShowsCancelButton:NO animated:YES]; 
  return YES;   
}  

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar
{  
  searchBar.showsScopeBar = YES;  
  [searchBar sizeToFit];  
  [searchBar setShowsCancelButton:YES animated:YES];  
  isSearch = YES;
  return YES;    
}  

请帮忙

4

1 回答 1

1

试试这个帖子

I would suggest you use UISearchDisplayController - a helpful tutorial?

于 2011-01-18T11:43:48.427 回答