Swift:使用按钮导航到新的ViewController

时间:2014-11-23 22:04:55

标签: ios swift uiviewcontroller

我有一个单独的视图应用程序连接到解析并验证用户登录信息并更新UILabel说"是的,您已成功登录" - 现在我希望它导航到一个新视图(这将是应用程序的主要部分)。

我已将新的视图控制器拖到故事板上,然后按住Ctrl键拖动按钮并使用 show 将其链接到新控制器。但是,当我加载应用程序并单击按钮时,它会直接进入新视图。如果if-else语句的正确部分被触发,我只需要去那里。

这有意义吗?感谢任何帮助的人。非常感激。

修改

if语句是:

if usrEntered != "" && pwdEntered != "" {
        PFUser.logInWithUsernameInBackground(usrEntered, password:pwdEntered) {
            (user: PFUser!, error: NSError!) -> Void in
            if user != nil {
                self.messageLabel.text = "You have logged in";
            } else {
                self.messageLabel.text = "You are not registered";
            }
        }
    }

并且它位于ViewController.swift文件

1 个答案:

答案 0 :(得分:52)

首先,我在this answer中解释,你需要将segue从整个UIViewController拖到下一个UIViewController,即你不应该专门连接UIButton(或任何IBOutlet)下一个UIViewController,如果转换的条件:

storyboard segue

您还需要为segue分配一个标识符。为此,您可以选择segue箭头,然后在右侧面板中键入标识符:

segue identifier

然后要执行实际的segue,请使用条件中的performSegueWithIdentifier函数,如下所示:

if user != nil {
    self.messageLabel.text = "You have logged in";
    self.performSegueWithIdentifier("segueIdentifier", sender: self)
} else {
    self.messageLabel.text = "You are not registered";
}

其中" segueIdentifier"是您在故事板中分配给segue的标识符。