更改视图控制器

时间:2018-04-12 14:54:26

标签: ios swift uiviewcontroller

如何将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

2 个答案:

答案 0 :(得分:0)

您可以在故事板中添加segue并调用performSegue(withIdentifier: "identifier", sender: self)

如果您的视图控制器位于导航控制器中,请将segue样式设置为push,否则设置为modal以将其显示在当前视图控制器之上

答案 1 :(得分:0)

如果你在同一个故事板上那么你可以简单地这样做 - 在LogVCctrl+ drag中选择一个按钮,直至UserDetailVC。然后点击segue。 (两个视图控制器之间的圆形物)。 -

enter image description here

并为其设置标识符(此处about是标识符,您可以为此指定任何名称) -

enter image description here

这是代码 -

@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)