UITableView disappears when UISearchController is

2019-06-17 18:58发布

Sorry if the title isn't that clear, found it tricky to summarise.

Using Xcode 6 Beta 4, target iOS 8:

I have a UITabBarController and one of its controllers is a UITableViewController (TVC). This TVC has a searchController property which is the new UISearchController which is replacing UISearchDisplayController. Initialising it like so (I would have just added it to my storyboard but the searchController in the object library down in the bottom right is still a UISearchDisplayController - should I file a radar for this?):

self.searchController = [[UISearchController alloc]initWithSearchResultsController:nil];
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.searchResultsUpdater = self;
self.searchController.delegate = self;
self.searchController.searchBar.frame = CGRectMake(0, 0, 320, 44);
self.tableView.tableHeaderView = self.searchController.searchBar;

Getting to the point, if the searchBar is first responder:

UISearchController is active and I'm about to choose another tab on the tabBar and come back

and then another tab is selected on the tabBar, and then you come back:

tableView has disappeared

I have no idea why this is happening? UISearchController bug perhaps? Or is the documentation not telling me something that I should be doing (it lacks detail at the moment).

2条回答
做自己的国王
2楼-- · 2019-06-17 19:20

I got my UISearchController working with no problems on Xcode 6 beta-5 thanks to this sample project I found on GitHub.

Giving credit where credit is due, I think dempseyatgithub has done a fantastic job of making this available for everyone to use as a reference project. Thanks!

查看更多
Melony?
3楼-- · 2019-06-17 19:40

enter image description here

look at this man , I set this property(definesPresentationContext) to true and it's Solved.

查看更多
登录 后发表回答