输入搜索时 UINavigationBar 变暗
Posted
技术标签:
【中文标题】输入搜索时 UINavigationBar 变暗【英文标题】:UINavigationBar dims down when entering search 【发布时间】:2018-02-25 18:59:40 【问题描述】:我制作了一个包含在导航控制器中的空视图控制器,并使用navigationItem.searchController
添加了一个搜索栏。奇怪的是,当点击搜索栏时,动画效果很好,但导航栏随着整个屏幕变暗。
这不是它在设置和其他地方的工作方式,即导航栏的颜色应该保持不变。
有什么想法吗?
一些代码:
- (void)viewDidLoad
[super viewDidLoad];
UISearchController* searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
searchController.searchResultsUpdater = self;
self.navigationItem.searchController = searchController;
...
【问题讨论】:
【参考方案1】:只需将dimsBackgroundDuringPresentation
或obscuresBackgroundDuringPresentation
设置为NO
。
【讨论】:
【参考方案2】:在你的 viewDidLoad 方法中,添加:
self.definesPresentationContext = YES;
【讨论】:
以上是关于输入搜索时 UINavigationBar 变暗的主要内容,如果未能解决你的问题,请参考以下文章
带有搜索图标的 UINavigationBar - 单击时推送模态搜索视图
UINavigationBar 在解除 UISearchController 时覆盖 UITableView
UINavigationbar 将在 UISearchbar 结束搜索后显示,我如何隐藏导航栏
UINavigationBar变成白色,在iOS 13中使用navigationItem.searchController时不会关闭