gpt4 book ai didi

ios - 为什么UIViewController中有一个navigationItem?

转载 作者:行者123 更新时间:2023-11-30 13:23:37 25 4
gpt4 key购买 nike

我正在阅读有关 UINavigationController 的内容,在 NavigationController 中拥有一个 navigationItem 是有意义的,

但是当我创建 UIViewController 时,还有一个来自 UINavigationItem 类型的名为 navigationItem 的属性

所以现在我有:

  1. UIViewController 中的navigationItem

  2. UINavigationController中的navigationItem

他们有不同的目的吗?

听起来UINavigationController中的navigationItem不起作用,因为我在UIViewController中执行了此代码:

self.navigationController!.navigationItem.title = "test2"

当我执行以下代码时,标题没有改变:

 self.navigationItem.title = "test"

标题已更改

最佳答案

重点是所有 UIViewController 都有一个UINavigationItem

UINavigationController 通过查看当前 viewController 的 navigationItem 来决定在其 navigationBar 中显示什么内容。

所以你明白了;

vcA.navigationItem.title = "A"
vcB.navigationItem.title = "B"

navigationController = UINavigationController(rootViewController: vcA)
// The title in the navigationBar is now "A"

navigationController.pushViewController(vcB, animated: true)
// The title in the navigationBar is now "B"

由于UINavigationController也是UIViewController的子类,它也继承了navigationItem,尽管它在大多数情况下没有用处。

关于ios - 为什么UIViewController中有一个navigationItem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37480089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com