从 navigationItem 中删除项目以编程方式显示 navigationItems 标题

remove item from navigationItem to display navigationItems title programmatically

我的 NavigationItem 中心有一个 UISegmentedControl。当权限较少的用户登录应用程序时,应该隐藏 segmentedControl,因此显示导航项的标题而不是它。

我尝试使用.isHidden = true,但是标题不会显示。

实现此目的的好方法是什么?当然,如果您注销并以管理员身份登录,您应该会再次看到 segmentedControl。

假设 UISegmentedControl 是通过 navItem.titleView...

设置的
override func viewDidLoad() {
    title = "My Title"
    if userHasRights {
        let segmentedControl = UISegmentedControl()
        // Setup segmented control...
        navItem.titleView = segmentedControl
    }
}

在导航项上设置 .titleView 应该覆盖在视图控制器上设置的标题。