我在弹出窗口中嵌入了一个UIViewController。该控制器有两个子视图,一个是UINavigationBar和一个UITableView。我尝试实现新的搜索API(因为在iOS8中不推荐使用SearchDisplayControlled)。
当我点击搜索栏(显示两个范围)时,一切都很好,导航栏仍然可见。但是当我开始在搜索栏中输入内容时,导航栏会消失,取而代之的是空白区域。我尝试在self.searchController.hidesNavigationBarDuringPresentation = NO;
方法中添加updateSearchResultsForSearchController:
,但没有结果。 (注意控制器viewDidLoad defines self.definesPresentationContext = YES;
)
是否有任何想法强制导航随时显示?
答案 0 :(得分:1)
我看到同样的效果 - 在我的情况下,在我的视图控制器中设置viewDidLoad
中的属性使导航栏保持不变:
- (void)viewDidLoad {
...
self.definesPresentationContext = YES;
...
}
当我之前从管理搜索的类(在VC上已经调用-viewDidLoad
后初始化)中设置相同的属性时,我看到了空白导航栏的相同行为你形容。
答案 1 :(得分:1)
这项工作对我来说
self.navigationController.navigationBar.translucent = true;