在iOS 11上调整UI导航

我在iOS 11中遇到导航栏问题。我使用此代码:

[UINavigationBar appearance].prefersLargeTitles = YES; 

…为我的应用设置新样式。 它很好用,直到用户拉出表视图刷新; 然后就打破了。

这是 pull-to-refresh之前:

在此处输入图像描述

……这是_after:

在此处输入图像描述

注意:我使用表视图控制器的内置pull-to-refresh控件。

我搜索了一个解决方案,但它仍然没有找到我。 如果有人知道如何解决这个问题,请提出一些建议。

感谢您的支持 :)

我也抓住了这个bug,我们找到了解决方案。

在大标题和所有相关视图开始正常工作之后, 您必须将UITableView约束为superview (视图控制器的contentView)。

喜欢这个: 在此处输入图像描述

虽然我没有声称这是针对每种情况发生错误的解决方案,将navigationBar的isTranslucent属性设置为true(这也是默认值)为我解决了问题。

如果您想让导航栏保持非半透明状态,可以使用以下代码:

 navigationBar.barStyle = .blackOpaque