首页 > 解决方案 > swift - 如何从一个 tabBarItem 在两个视图控制器之间切换并自定义它?

问题描述

我堆满了如此标准的问题,但找不到任何可行的例子。

我的应用程序中有 TabBar(在情节提要中添加),它看起来像 [Home, Log In, ...]。重点是关于第二个 TabBarItem。可能有2种情况:

1) 用户登录 - tabBarItem 的标题显示为“Profile”,用户应该重定向到 ProfileViewController,它实际上是一个导航视图控制器

2) 用户未登录 - 标题应为“登录”,目的地为 LoginViewController

请帮我找到解决方案。

标签: iosswiftuitabbarcontrolleruitabbaritem

解决方案


你需要

class CustomTab:UITabBarController {

  override func awakeFromNib()
    super.awakeFromNib()

    let home = ///

    if userLoggedIn {

       let profile = //

       self.viewControllers = [home,profile]

    }
    else {

       let login = //

       self.viewControllers = [home,login]
    }

    tabBar.items?[1].title = userLoggedIn  ? "Profile" :"Login"

  }
}

推荐阅读