search bar getting disappeared in ios UIsearchcont

2019-06-05 17:08发布

I am using UISearchController and when I click on the searchbar , I get animation as if the searchbar is going to the navigation bar of the presented searchcontroller with fading animation but it disappears and the keyboard presented is staying there.

In viewcontroller.m, viewdidload method, relevant part:

UIView *searchView = [[UIView alloc]initWithFrame:CGRectZero];
searchResultsViewController =[[SearchResultsViewController alloc]initWithNibName:@"SearchResultsViewController" bundle:nil];
self.searchController =[[UISearchController alloc]initWithSearchResultsController:nil];
self.searchController.searchResultsUpdater=self;
self.searchController.dimsBackgroundDuringPresentation = NO;
searchView = self.searchController.searchBar;
self.definesPresentationContext = YES;
self.searchController.searchBar.delegate=self;
searchView.frame =CGRectMake(0, 50, [[UIScreen mainScreen]bounds].size.width, 40);
[self.view addSubview:searchView];

The SearchResultsViewController is a UIViewController with filtered Array which gets its value from -(void)updateSearchResultsForSearchController:(UISearchController *)searchController method in ViewController

As the search bar was disappearing, I tried to put the searchbar as a header for the TableView in ViewController, it is working normally . but when I just put the searchbar view as custom created view instead of table header, it is disappearing.

Any insight would be appreciated. Thanks

1条回答
仙女界的扛把子
2楼-- · 2019-06-05 17:20

Try with these two settings:

self.searchController.hidesNavigationBarDuringPresentation = NO;
self.definesPresentationContext = NO;
查看更多
登录 后发表回答