【发布时间】:2016-04-09 16:31:37
【问题描述】:
我将搜索栏和显示控制器拖到视图控制器上,并将其放在大纲的底部。
然后我将其设置为在导航栏中显示,并在 viewdidload 中使用以下行。一切正常。
self.searchDisplayController.displaysSearchBarInNavigationBar = true;
但是,我一开始想隐藏它,而vewdidload中的以下行没有任何效果。
self.searchDisplayController.searchBar.hidden = true;
谁能建议怎么做?
提前感谢您的任何建议。
编辑:
我想我已经发现你不能同时拥有 searchBar.hidden = true 和 displaySearchBarInNavigationBar。这对我来说很好,因为我只想要一个。所以我试着把这两种情况分开。
首先在视图中确实加载了,我把
self.searchDisplayController.searchBar.hidden = true;
如果单独使用,这确实有效。
然后我有一个搜索按钮连接到一个操作方法,如下所示:
- (IBAction)searchButtonPressed:(id)sender {
NSLog(@"search button pressed");
self.searchDisplayController.searchBar.hidden = false;
self.searchDisplayController.displaysSearchBarInNavigationBar = true;
self.searchDisplayController.searchBar.showsCancelButton = YES;
}
但是,虽然我可以从日志中看到调用了该方法,但它并没有取消隐藏搜索栏。也许这是代表问题,但仍在寻找解决方案。
【问题讨论】:
-
您只想隐藏搜索栏吗?那么
searchBar.hidden = true就够了。 -
这让我可以使用未声明的标识符
-
检查答案,如果您在添加出口时遇到问题,只需在我的帖子中发表评论,我会帮助您。