繁体   English   中英

使用Swift和Parse运行时Segues不执行

[英]Segues not executing when run using Swift and Parse

因此,我已经设置了我的应用程序,以确定是否有用户以及是否有用户该怎么办。 另外,如果他们通过电话号码和短信验证了他们的帐户,我的问题是,当我运行该应用程序时,什么都没有发生。 它会加载,然后不执行任何segue。 所有segue标识符的名称都正确。 currentUser变量具有值,但是numberIsVerified没有值。 我确定这与它有关,但不确定如何修复它。

确定将用户带到何处的代码:

override func viewDidLoad() {
    super.viewDidLoad()

}

override func viewWillAppear(animated: Bool) {

    var currentUser = PFUser.currentUser()

    if currentUser == nil || currentUser!["phoneNumberVerified"] == nil {

        performSegueWithIdentifier("showInitialView", sender: self)

    } else {

        if let numberIsVerified = currentUser!["phoneNumberVerified"] as? Bool {

            if currentUser != nil && numberIsVerified == false {
                performSegueWithIdentifier("showVerifyUserView", sender: self)

            } else if currentUser != nil && numberIsVerified == true {
                performSegueWithIdentifier("showMyEventsView", sender: self)

            } else {
                performSegueWithIdentifier("showInitialView", sender: self)
            }
        }
    }
}

}

视图完全加载后,才可以使用performSegueWithIdentifier 因此,您无法从viewDidLoad中选择。 要解决此问题,请将您的segue移至viewDidAppear:

override func viewDidAppear(animated: Bool) {

}

更新:我创建了一个简单的应用程序,可以执行segue来将您的代码与以下内容进行比较:

下载专案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM