从导航控件到标签栏导航swift进行选择

时间:2020-02-03 16:52:52

标签: ios swift4

我正在尝试从导航控件的最后一个屏幕(堆栈-您可以在其中退回)到标签栏导航的第一个屏幕执行segue。到目前为止,我唯一成功的方法是打开选项卡栏的第一个屏幕,而没有底部的选项卡,而顶部带有“后退”按钮。任何想法?

  func userLogin(status: Bool, user: UserModel) {
    DispatchQueue.main.async {
        if status == true{
            self.userModel = user
            self.performSegue(withIdentifier: Constants.gotoOverview, sender: self)
        } else {
            let alert = UIAlertController(title: "Register", message: "some message", preferredStyle: UIAlertController.Style.alert)
            alert.addAction(UIAlertAction(title: "OK", style: UIAlertAction.Style.default, handler: nil))
            self.present(alert, animated: true, completion: nil)
        }
    }
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    let vc = segue.destination as! OverviewController
    vc.userModel = userModel
}

1 个答案:

答案 0 :(得分:0)

通过将根视图控制器设置为第一个视图控制器来完成这项工作,为什么要使用segue。

例如:-在导航屏幕的末尾,您要将第一个屏幕设置为根视图控制器。

如果未显示标签栏图标,则还可以创建标签栏vc标识符并将该控制器设置为当前vc,它将起作用。

当您使用的是最后一个vc(视图控制器)时,然后使用导航按钮来推送vc。

     let storyBoard = UIStoryboard(name: "Main", bundle: nil)
    let vc: UIViewController = 
    storyBoard.instantiateViewController(withIdentifier: TabBarVC)
    self.navigationController?.pushViewController(vc, animated: true)

Create tabbar Controller class