在iOS 11上调整用户界面导航

4

我在iOS 11中遇到了一个导航栏的问题。我使用了以下代码:

[UINavigationBar appearance].prefersLargeTitles = YES;

...为我的应用程序设置新样式。它运行良好,直到用户在表视图上拉刷新时,它就会出现问题。

这是下拉刷新之前的样子:

enter image description here

...而这是下拉刷新之后的样子:

enter image description here

注意:我使用了表视图控制器内置的下拉刷新控件。

我搜索了解决方案,但仍然无法解决。如果有人知道如何解决,请给些建议。

感谢您的支持 :)


你有尝试在你的 .storyboard 文件中启用安全区域指南吗(你可以通过进入 "文件检查器" -> "使用安全区域布局指南" 来完成)?这对我解决了类似的问题。 - Aleksander Grzyb
2个回答

3

我也遇到了这个bug,并且我们已经找到了解决方案。

你必须将UITableView限制在父视图上(即你的视图控制器的contentView),之后大标题和所有相关视图就可以正常工作了。

像这样:

enter image description here

2

虽然我不能保证这是解决每个出现错误的情况的方法,但将navigationBar的isTranslucent属性设置为true(这也是默认值)可以为我解决问题。

如果您想保持导航栏不透明,可以使用以下代码:

navigationBar.barStyle = .blackOpaque

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接