iOS 11 - 在不使用 UINavigationController 的情况下在 UINavigationBar 上显示大标题

iOS 11 - Display large title on UINavigationBar without using UINavigationController

我有 UIViewControllerUINavigationBar 作为子视图。不涉及 UINavigationController

我正在尝试显示大标题。作为docs directed我们要做的:

myCustomNavigationBar.prefersLargeTitles = true
myCustomNavigationItem.largeTitleDisplayMode = .always

但仍保持之前的显示模式(iOS10导航模式)。

当用 UINavigationController 尝试相同的代码时,它按预期工作。没有 UINavigationController 是不可能的还是我没有正确处理这个问题?

我不确切知道您在视图生命周期的什么时候包括了这些代码行,但是如果您在 viewWillAppear(_ animated: Bool) 方法中执行它们,它会完美运行。 我已经在 Xcode 9 GM 上查看过了。

编辑:很抱歉,我没有看到您没有使用 UINavigationController。没有 UINavigationControllerUINavigationBar 没有任何意义。请将您的 UIViewController 添加到 UINavigationController,如果您将这些行放在 viewWillAppear(_ animated: Bool) 方法

下,您将看到您想要的更改

:)