Я ранее писал эту функцию, и она отлично работала. Я снова начал работу над проектом после недельного перерыва, и тот же код не работает. Я что-то упустил? В основном, если нажата кнопка, будет запущен checkCredentials
. Все в разделе «еще» работает полностью нормально, но раздел if user != nil
не работает:UIViewController не удается перейти на другую страницу в swift
func checkCredentials(){
PFUser.logInWithUsernameInBackground(usernameLoginTxt.text!, password: passwordLoginTxt.text!){
(user:PFUser?, error:NSError?) -> Void in
if user != nil{
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let vc: UIViewController = storyboard.instantiateViewControllerWithIdentifier("SearchViewController") as UIViewController
self.presentViewController(vc, animated: false, completion:nil)
NSLog("it was successfull dude")
}else{
let title = "Warning!"
let message = "You have entered the wrong username or password.\n Please try again!"
let okButton = "Ok"
let alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertControllerStyle.Alert)
let okayButton = UIAlertAction(title: okButton, style: UIAlertActionStyle.Cancel, handler: nil)
alert.addAction(okayButton)
self.presentViewController(alert, animated: true, completion: nil)
}
}
}
Есть ли значение в 'error'? Похоже, что что-то может быть неправильным с запросом Parse –
Можете ли вы уточнить, видите ли вы сообщение NSLog? Если нет, то либо пользователь == nil и ваш код не выполняются, либо весь обработчик завершения не выполняется (возможно, из-за ошибки в ответе). На самом деле, позже объяснил бы, почему он работал неделю назад и не работает сейчас :) –