私はFirebaseをバックエンドとして使用しており、ログイン部分をコーディングしています。私がテストアカウントでログインすると、デバッガは "Logged In:"というメッセージを表示します。しかし、メインビューコントローラに移動しようとするとエラーが発生します。致命的なエラー:アンラッピング中に予期せずnilが見つかりました "ラインself.presentviewcontrollerに。ここで間違って何をしているのですか?あなたのViewControllerに識別子ViewController
を設定する自分のメインストーリーボード上のログイン成功後に別のViewControllerを表示する方法
if email != "" && password != ""
{
FIREBASE_REF.authUser(email, password: password, withCompletionBlock: {(error, FAuthData) -> Void in
if error == nil
{
NSUserDefaults.standardUserDefaults().setValue(FAuthData.uid, forKey: "uid")
print("logged in")
self.logoutButton.hidden = false
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let secondViewController = storyboard.instantiateViewControllerWithIdentifier("ViewController") as! ViewController
self.presentViewController(secondViewController, animated: true, completion: nil)
}
else{
print("The user was not logged in")
}
})
}
else{
let alert = UIAlertController(title: "ERROR", message: "Please Enter Email and Password", preferredStyle: .Alert)
let action = UIAlertAction(title: "OK", style: .Default, handler: nil)
alert.addAction(action)
self.presentViewController(alert, animated: true, completion: nil)
}