1

我在导航控制器中有两个视图控制器。根视图控制器有小标题,下一个视图控制器有大标题。

当我推动下一个视图控制器时,我设置

self.navigationItem.largeTitleDisplayMode = .always

在下一个视图控制器的 viewDidLoad 中。问题是,在转换时,它会暂时显示标题很小,然后标题变大。但我只想显示大标题。我尝试在 ViewDidAppear 中设置标题文本,它有点工作,但标题出现较晚。我也不想要那个。

4

2 回答 2

0

有同样的问题,我这样做了:

在 VC 1 中:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    navigationItem.largeTitleDisplayMode = .never
}

在 VC 2 中:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    navigationItem.largeTitleDisplayMode = .always
    navigationController?.navigationBar.prefersLargeTitles = true
}
于 2019-06-26T15:56:22.887 回答
0

假设你在 vc1 中做这样的事情

let vc2 = SomeVC()
vc2.navigationItem.largeTitleDisplayMode = .always
self.navigationController.pushViewController(vc2, animated: true)

所以尝试在推送视图控制器之前设置属性

于 2018-09-11T08:03:46.670 回答