我有一个单一 View 应用程序,该应用程序可以解析和验证用户登录信息并更新UILabel,说“是的,您已成功登录”-现在,我希望它导航到新 View (这将是该应用程序)。
我将一个新的 View Controller 拖到 Storyboard 上,然后按住Ctrl并拖动按钮,并使用 show 将其链接到新 Controller 。但是,当我加载应用程序并单击按钮时,它会直接进入新 View 。我只需要在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文件中
最佳答案
首先,正如我在this answer中解释的那样,您需要将segue从整个UIViewController拖到下一个UIViewController,即,如果转换是有条件的,则您不应该将UIButton(或与此有关的任何IBOutlet)专门连接到下一个UIViewController:
您还需要为segue分配一个标识符。为此,您可以选择segue箭头,然后在右侧面板中输入一个标识符:
然后,要执行实际的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”是您在 Storyboard 中分配给您的segue的标识符。
关于ios - Swift:使用按钮导航到新的ViewController,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27094923/