如何将两个视图控制器添加到一个选项卡栏项

时间:2017-10-30 14:39:05

标签: ios swift uitabbarcontroller

我是swift的新手。我用three view controllers创建了一个项目  - 主页  - 我的帐户   - 登录页面 storyboard.i中的一个导航控制器和标签栏控制器将root view controllers连接为主页和我的帐户页面。 我的问题是当我点击My account标签栏项目时我需要检查用户是否已登录。 如果用户未登录,则应转至Login page,反之亦然。但它没有发生。请帮帮我....

1 个答案:

答案 0 :(得分:3)

要在用户点击TabBarButton时加载正确的视图控制器,您必须实现UITabBarDelegate

您正在寻找的方法是这个(see documentation):

func tabBar(UITabBar, didSelect: UITabBarItem)

我建议您实施此委托,并在用户选择正确的项目时检查用户是否已连接。

我应该是这样的:

func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
    if item == accountItem, isConnected {
        // show my account
    else if item == accountItem {
        // show login
    }
}