ios - 在 segues Swift 之后出现在导航栏下的灰色栏

标签 ios uinavigationcontroller storyboard

当我转到特定的 VC 时,导航栏下方会出现一个与我的导航栏 + 状态栏大小完全相同的灰色栏。在另一个 VC 中,灰色条不存在,除非我打开 Youtube,然后使用 iOS 9“返回‘App’”按钮。

这是它的样子:

enter image description here

从图中可以看出,灰色条没有覆盖 YTPlayerView,而是将其向下推。

这是怎么回事?

编辑

为了清晰起见,我添加了 View 层次结构。

enter image description here

编辑

我为有问题的 YTPlayerView 添加了约束。

enter image description here

编辑

对顶部布局指南的约束为 0

enter image description here

最佳答案

我不完全理解这里的问题,但它似乎是 View 层次结构问题?

enter image description here

这是有缺陷的层次结构;我更改了 stackView 的颜色以查看它是否是罪魁祸首,但事实并非如此。

我做了更多测试,发现问题出在 YTPlayerView 中。

enter image description here

YTPlayerView 开始包含灰色空间,但在使用 iOS 9“返回应用程序”功能的 Safari 中转到 Youtube.com 后,灰色条将 View 向下插入自身。

最终解决这个问题的只是将 YTPlayerView 设置在层次结构中较低的位置,如下所示:

enter image description here

使用“返回应用”功能后灰色条不再出现。

关于ios - 在 segues Swift 之后出现在导航栏下的灰色栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33769987/

相关文章:

iOS 如何在 UITextView 中内联插入 UITextField

ios - 什么时候一个类会有多个指定的初始化程序?

iOS 打开带有查询的 YouTube 应用程序(url 方案)

IOS - 为什么标签没有更新?

objective-c - 如何在应用程序中的任何地方设置导航栏的图像

iOS 13 - 导航栏标题颜色问题

ios - UIWebView for GIF 后台loadData方法报错

ios - 在 iOS 设备上运行 clubbed swift & react-native 项目时出错

ios - 如何 "pop"UINavigationController 堆栈中的几个 View Controller ?

ios - 在 Swift 中将数据传递给另一个 ViewController