我是 Swift 的新手,为此苦苦挣扎了一段时间。
我正在尝试根据登录状态将用户重定向到“登录” View Controller 或“主页” View Controller 。
“Home”viewcontroller 有 NavigationBar 和 TabBar,它显示了一个表格。但是,当我使用以下代码时,我只看到表格。 NavigationBar 和 TabBar 根本不显示。
var view = self.storyboard?.instantiateViewControllerWithIdentifier("HomeViewController") as UIViewController
self.presentViewController(view, animated: true, completion: nil)
这是我的 Storyboard:https://www.dropbox.com/s/dkcz45n8000gua6/storyboard.png?dl=0
如有任何帮助,我们将不胜感激!
编辑(使用 TabBarController):
var view = self.storyboard?.instantiateViewControllerWithIdentifier("MainTabController") as UITabBarController
self.presentViewController(view, animated: true, completion: nil)
最佳答案
您的问题与刚接触 swift 无关;这与不理解 Storyboard有关。如果您实例化 HomeViewController 并呈现它,那么您将得到的就是这些。它嵌入在 Storyboard 中的选项卡栏 Controller 和导航 Controller 中的事实对于您刚刚实例化的这个裸 Controller 是“未知的”。您应该改为实例化选项卡栏 Controller ,并呈现它。它将负责实例化它的任何 subview ,而导航 Controller 将负责实例化它的 Root View Controller 。
关于ios - presentViewController 不显示标签栏或导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29453090/