带有 iOS 11 大标题的 UISplitViewController 破动画
Posted
技术标签:
【中文标题】带有 iOS 11 大标题的 UISplitViewController 破动画【英文标题】:UISplitViewController with iOS 11 large titles broken animation 【发布时间】:2017-11-13 13:57:38 【问题描述】:当使用 UISplitViewController 从 Master 导航到 Detail 时,导航栏动画无法按预期工作。它“跳跃”而不是流畅的动画。
复制步骤:
在 Xcode 9 中从模板“Master detail App”创建项目。
在viewDidLoad
中的MasterViewController
中加入如下代码:
navigationController?.navigationBar.prefersLargeTitles = true
navigationItem.largeTitleDisplayMode = .always
在DetailViewController
viewDidLoad
中添加如下代码:
navigationItem.largeTitleDisplayMode = .never
现在在 iPhone 模拟器中的 Master 和 Detail 之间导航,您可以看到 Navigation Bar 如何在 DetailViewController 上“跳跃”而不是平滑动画。
观看视频:https://youtu.be/p90I4VrM2fs
我的假设是它与使用两个 UINavigationController 和 UISplitViewController 有关。 (就是这样做的)
任何想法如何解决这个问题?谢谢。
【问题讨论】:
【参考方案1】:我刚刚发现了问题。 prefersLargeTitles
和 largeTitleDisplayMode
必须在 awakeFromNib()
中设置,而不是在 viewDidLoad()
中。
【讨论】:
以上是关于带有 iOS 11 大标题的 UISplitViewController 破动画的主要内容,如果未能解决你的问题,请参考以下文章
带有 AirPods 的 iOS11 上的 RemoteIO
iOS 13:带有 LeftView 间距问题的 UITextField - Xcode 11