【发布时间】:2015-10-13 04:26:48
【问题描述】:
我有一个带有一些自定义的UISearchBar,我创建了一个这样的 UISearchDisplayController
self.searchController = [[UISearchDisplayController alloc]initWithSearchBar:self.searchBar contentsController:self];
我希望搜索栏出现在导航栏上,所以我也设置了
self.searchDisplayController.displaysSearchBarInNavigationBar = true;
现在搜索栏显示在导航栏中,但我只想在点击导航栏按钮项时显示UISearchDisplayController 的搜索栏。我想要这样的行为:
- 最初隐藏搜索栏
- 点击导航栏按钮时显示搜索栏
- 点击“取消”按钮时隐藏搜索栏 搜索栏
我试图像这样隐藏/取消隐藏它:
self.searchDisplayController.searchBar.hidden = YES;
但代码似乎不起作用。我花了很多时间寻找解决方案以获得我想要的行为,但仍然没有运气。谢谢。
【问题讨论】:
-
您需要完成三项任务。这些都有效吗?
-
这些步骤都不起作用,因为我还没有找到隐藏/取消隐藏
UISearchDisplayController的搜索栏的方法。 -
您是否满足于让搜索栏滚出屏幕(非动画)并在顶部导航栏下方,点击导航栏将其收回以显示下方的搜索栏(动画),点击搜索取消栏将导航栏恢复到搜索栏顶部(动画)?
标签: ios objective-c uisearchbar uisearchdisplaycontroller