Ios 为什么';是否在注销时重置PFuser?

Ios 为什么';是否在注销时重置PFuser?,ios,swift,parse-platform,login,Ios,Swift,Parse Platform,Login,我正在使用: } else if segue.identifier == "logout" { var currentUser = PFUser.currentUser() PFUser.logOut() } 单击“注销”按钮后,它会再次进入登录屏幕,但是如果单击“登录”按钮,它会将该用户重新登录,而无需再次输入任何凭据 为什么在注销时没有将用户重置为零 @IBAction func logIn(sender: AnyObject) { if username.te

我正在使用:

} else if segue.identifier == "logout" {

    var currentUser = PFUser.currentUser()
    PFUser.logOut()
}
单击“注销”按钮后,它会再次进入登录屏幕,但是如果单击“登录”按钮,它会将该用户重新登录,而无需再次输入任何凭据

为什么在注销时没有将用户重置为零

@IBAction func logIn(sender: AnyObject) {

    if username.text == "" || password.text == "" {

       displayNewAlert("Field(s) Empty", message: "Please Enter a Username and Password")

    } else {

        activityIndicator = UIActivityIndicatorView(frame: CGRectMake(0, 0, 50, 50))
        activityIndicator.center = self.view.center
        activityIndicator.hidesWhenStopped = true
        activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray
        view.addSubview(activityIndicator)
        activityIndicator.startAnimating()
        UIApplication.sharedApplication().beginIgnoringInteractionEvents()


        let user = PFUser()
        user.username = username.text
        user.password = password.text

        var errorMessage = "Please Try Again Later"

        PFUser.logInWithUsernameInBackground(username.text!, password: password.text!, block: { (user, error) -> Void in

            self.activityIndicator.stopAnimating()
            UIApplication.sharedApplication().endIgnoringInteractionEvents()

            if user != nil {

               self.performSegueWithIdentifier("login", sender: self)

            } else {

                if let errorString = error!.userInfo["error"] as? String {

                    errorMessage = errorString

                }

                self.displayNewAlert("Failed Log In", message: "Please enter a valid username and password")
            }
        })
    }
}

我解决了这个问题,任何人都想知道。我在注销和登录之间做了一个情节提要

我应该使用:

@IBAction func logOut(sender: AnyObject) {

    PFUser.logOut()
let currentUser = PFUser.currentUser()
    self.dismissViewControllerAnimated(true, completion: nil)
}
这是执行注销的正确方法。不是从上面提到的

    segue.identifier == "....."

你能显示他们按下登录按钮时执行的代码吗?@Paulw11我为它添加了代码。检查您的用户名和密码文本字段是否为空?为什么在闭包外部创建PFUser,然后在闭包内部检查它是否为非nil?这是错误的。在闭包中,您应该首先检查错误是否为非nil。如果错误为零,则检查PFUser.currentUser是否为非零。您根本不需要
user
变量注销后“currentUser”未设置为null的原因是因为在设置变量“currentUser”的值后调用了“PFUser.logOut()”。在声明变量之前,请尝试调用“PFUser.logOut()”。@Dridia如果不起作用,请尝试。