我已经按照iOS8标准设置了我的UISearchBar(使用UISearchController),并且我正在以编程方式将其添加到我的UIViewController中,在我的UITableView上方(我相信这是目前iOS8唯一的方法)。在我的viewDidLoad中,我像下面这样添加它(与其他所有教程不同,它们都将其添加到TableView标题中),我希望我的搜索框在滚动UITableView时保持固定:
self.automaticallyAdjustsScrollViewInsets = NO;
UITableViewController *searchResultsController = [[UITableViewController alloc] initWithStyle:UITableViewStylePlain];
searchResultsController.tableView.dataSource = self;
searchResultsController.tableView.delegate = self;
CGRect frame = [[UIScreen mainScreen] applicationFrame];
CGSize size = frame.size;
self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsController];
self.searchController.searchResultsUpdater = self;
self.searchController.searchBar.frame = CGRectMake(0, 60, size.width, 44.0);
self.definesPresentationContext = YES;
[self.view addSubview:self.searchController.searchBar];
我遇到的问题是,当我点击搜索框时,它会通过向上过渡消失在我的UINavigationBar后面,如果在UITableView的标题中通常不会发生这种情况。
有没有办法阻止这种情况发生?谢谢!