如何将ViewController更改为另一个VC? 例: 我有LogVC和UserDetailVC。 当用户写入用户名并传递logVC时需要更改为userDetailVC。 - 当用户没有登录时,他看不到userDetailVC - 当用户登录时,他出去之前看不到logVC 现在我做了
let userController = self.storyboard?.instantiateViewController(withIdentifier: "userDetailVC") as! userDetailVC
self.present(userController, animated: true, completion: nil)
窗口更改为userDetailVC,但我没有TabBarController
答案 0 :(得分:0)
您可以在故事板中添加segue并调用performSegue(withIdentifier: "identifier", sender: self)
如果您的视图控制器位于导航控制器中,请将segue样式设置为push
,否则设置为modal
以将其显示在当前视图控制器之上
答案 1 :(得分:0)
如果你在同一个故事板上那么你可以简单地这样做 -
在LogVC
和ctrl+ drag
中选择一个按钮,直至UserDetailVC
。然后点击segue。 (两个视图控制器之间的圆形物)。 -
并为其设置标识符(此处about
是标识符,您可以为此指定任何名称) -
这是代码 -
@IBAction func UserDetailVC(sender: AnyObject) {
self.performSegue(withIdentifier: "segueIdentifierName", sender: sender)
}
或者如果您想使用标识符“userDetailVC”导航到StoryBoard上的Controller,那么执行此操作(当您尝试将一个故事板的ViewController
显示到另一个故事板ViewController
时,这将适用): / p>
let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let nextViewController = storyBoard.instantiateViewController(withIdentifier: "userDetailVC") as! userDetailVC
self.present(nextViewController, animated:true, completion:nil)