Hide search bar of search display controller

大憨熊 提交于 2019-12-12 01:52:38

问题


I dragged a search bar and display controller to a view controller and placed it at the bottom of the outline.

I then set it to display in navigation bar with following line in viewdidload. All that works.

self.searchDisplayController.displaysSearchBarInNavigationBar = true;

However, I want to hide it initially, and the following line in vewdidload is not having any effect.

self.searchDisplayController.searchBar.hidden = true;

Can anyone suggest what to do?

Thanks in advance for any suggestions.

EDIT:

I think I have figured out that you cannot have searchBar.hidden = true and displaysSearchBarInNavigationBar at the same time. Which is fine by me as I only want one or the other. So I tried separating the two cases.

First in view did load, I put

self.searchDisplayController.searchBar.hidden = true;

This does work if by itself.

Then I have a search button wired to an action method as follows:

 - (IBAction)searchButtonPressed:(id)sender {
    NSLog(@"search button pressed");
    self.searchDisplayController.searchBar.hidden = false;
    self.searchDisplayController.displaysSearchBarInNavigationBar = true;
    self.searchDisplayController.searchBar.showsCancelButton = YES;
}

However, while I can see from the log that the method is called, it does not unhide the search bar. Perhaps it is delegate issue but still looking for solutions.


回答1:


Do it like this

  1. Add an outlet to your searchBar from your Storyboard
  2. Then you can use the outlet identifier to hide the searchBar by adding the following row

searchBar.hidden = true




回答2:


=> try it.

self.definesPresentationContext = true

OR-------------

searchController.hidesNavigationBarDuringPresentation = false

=> more If You Want to know given Refrence below might be useful:-

How to implement UISearchController in UITableView - SWIFT

UISearchController doesn't hide view when pushed



来源:https://stackoverflow.com/questions/34618645/hide-search-bar-of-search-display-controller

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!