我的主屏幕中有一个搜索栏 - 根表视图控制器。如果我浏览其他屏幕并回来,有时候,搜索栏会消失。这是我的代码。
searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, self.tableView.frame.size.width, 44.0)];
searchBar.delegate = self;
searchBar.tintColor = [UIColor blackColor];
[searchBar sizeToFit];
self.tableView.tableHeaderView = searchBar;
searchDisplayController = [[UISearchDisplayController alloc]
initWithSearchBar:searchBar contentsController:self];
searchDisplayController.delegate = self;
searchDisplayController.searchResultsDataSource = self;
searchDisplayController.searchResultsDelegate = self;
我的代码有什么问题,还是SDK 3.0的怪癖之一?
答案 0 :(得分:2)
我最近偶然发现了同样的问题并且能够缩小它的发生范围,直到搜索栏不在视线范围内(即表格视图已经滚动),然后导航离开,然后返回并滚动回去视线。我一直无法找到有关原因的任何信息,但我可以通过放置它来解决这个问题:
self.tableView.tableHeaderView = searchBar;
在我的控制器类的 viewWillAppear 或 viewDidAppear 事件中。我假设您发布的代码来自控制器类的 viewDidLoad 方法?