为啥使用 UINavigationController 推送时标签栏项目标签会发生变化?
Posted
技术标签:
【中文标题】为啥使用 UINavigationController 推送时标签栏项目标签会发生变化?【英文标题】:Why does the tabbar items label change when Pushing using UINavigationController?为什么使用 UINavigationController 推送时标签栏项目标签会发生变化? 【发布时间】:2012-09-22 22:46:15 【问题描述】:我创建了带有三个选项卡的 UITabController。一个 Tab 有 UINavigationController,它推动三个控制器 A、B 和 C。
当我将 segue 从 A 推到 B 或 B 推到 C 时,我会更改 A、B 和 C 上的标题。更改 A、B 或 C 上的标题也会更改我在主 tabController 中的第三个选项卡项的标题。如何使主控制器上的标签栏项目标签固定?
【问题讨论】:
【参考方案1】:我遇到了同样的问题,这个帖子解决了我的问题:self.title sets navigationController and tabBarItem's title? Why?
您基本上需要在 UIViewController(由 UINavigationController 显示)中的 viewDidLoad 方法中设置标题,如下所示:
self.navigationItem.title = @"Your Title";
而不是这个
self.title = @"Your Title";
【讨论】:
以上是关于为啥使用 UINavigationController 推送时标签栏项目标签会发生变化?的主要内容,如果未能解决你的问题,请参考以下文章
从 SwiftUI 推送到 UIViewController