【发布时间】:2018-09-15 16:47:23
【问题描述】:
我正在从具有大样式 UINavigationItem 的视图过渡到具有大样式 UINavigationItem 和 UISearchController 的视图。我已经自定义了UINavigationBar 的背景颜色。
由于某种原因,UINavigationBar 和 UISearchController 之间有 1 像素的线或空格。我可以告诉它来自NavigationBar,因为如果我滚动以使搜索栏贴在顶部,那么该行就会消失。我只是不确定是什么产生了这条线。除了设置barTintColor 和tintColor 之外,我没有使用阴影或任何花哨的东西。如果我不使用大样式标题,我会看到这条线,但仅在视图之间转换时。就像在转换 UISearchController 时,它并没有紧贴 UINavigationBar。
感谢任何帮助找出这条线的来源。
更新:在进一步调查中,这似乎仅在 navigationItem.hidesSearchBarWhenScrolling 设置为 false 时发生。如果它最初是隐藏的,那么前一个视图的动画是平滑的,并且显示栏也是平滑的。
【问题讨论】:
-
我通过添加这一行来修复,[self.navigationBar setTranslucent:false];
-
@Ben johnson,你找到答案了吗?
标签: ios uinavigationbar uisearchcontroller preferslargetitles