iOS11中如何设置导航栏与ViewController内容重叠

Posted

技术标签:

【中文标题】iOS11中如何设置导航栏与ViewController内容重叠【英文标题】:How to set NavigationBar overlapping the ViewController content in iOS11 【发布时间】:2017-11-01 16:28:59 【问题描述】:

我想让navigationBar重叠视图控制器的根视图,我尝试了两种方法:

self.additionalSafeAreaInsets = UIEdgeInsetsMake(-100, 0, 0, 0);

self.edgesForExtendedLayout = UIRectEdgeAll;
self.extendedLayoutIncludesOpaqueBars = YES;

这些选项都不起作用。

所以现在看起来像下图(渐变橙色是navigationBar)View content below the navigationBar

但是我想要实现的是 viewController 的实际内容从屏幕顶部开始,渐变橙色与 viewController 重叠。

如果我还是不能表达清楚,请告诉我。谢谢。

【问题讨论】:

你能发布一张你目前拥有的和你想要的照片吗?谢谢。 你使用导航控制器来展示你的视图控制器吗? 您能否提供您实际需要的设计以及您现在拥有的设计。 【参考方案1】:

不确定你的意思,但也许:

override func viewDidLoad() 
    super.viewDidLoad()
    self.navigationController?.setNavigationBarHidden(false, animated: false)

或将其设置为从情节提要中可见

【讨论】:

以上是关于iOS11中如何设置导航栏与ViewController内容重叠的主要内容,如果未能解决你的问题,请参考以下文章

如何匹配导航栏与状态栏ios7

让导航栏与iOS 7中的状态栏重叠

在 iOS7 中将搜索栏与导航栏结合时 UISearchbar 空间为空?

iOS:向应用程序窗口添加导航栏与状态栏冲突

在 iOS 7 中让导航栏与状态栏重叠

导航栏与状态栏