在 iOS 11 上调整 UI 导航

Posted

技术标签:

【中文标题】在 iOS 11 上调整 UI 导航【英文标题】:Tweak UI Navigation on iOS 11 【发布时间】:2017-07-25 05:47:43 【问题描述】:

ios 11 中的导航栏有问题。 我使用此代码:

[UINavigationBar appearance].prefersLargeTitles = YES;

...为我的应用设置新样式。在用户拉动以刷新表格视图之前,它运行良好;然后它就坏了。

这是之前拉刷新:

...这是_after:

注意:我使用 table view controller 的内置 pull-to-refresh 控件。

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

感谢您的支持:)

【问题讨论】:

您是否尝试在.storyboard 安全区域指南中启用(您可以通过进入“文件检查器”->“使用安全区域布局指南”来实现)?它为我解决了类似的问题。 【参考方案1】:

我也发现了这个错误,我们已经找到了解决方案。

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

像这样:

【讨论】:

【参考方案2】:

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

如果你想让你的导航栏不透明,你可以使用下面的代码:

navigationBar.barStyle = .blackOpaque

【讨论】:

以上是关于在 iOS 11 上调整 UI 导航的主要内容,如果未能解决你的问题,请参考以下文章

iOS 11.2 自定义导航栏无限循环

如何在移动设备上调整网站的ui

iOS 11.2自定义导航栏无限循环

如何在 ipad 设备上调整导航栏高度

在 iOS 11 上,导航项中的搜索栏在导航弹出时折叠并卡在状态栏下

导航控制器工具栏大小和位置 - iOS Swift