Я пытаюсь изменить (изменить) электронную почту пользователя в приложении iOS с помощью быстрой и огневой базы. При изменении функции электронной почты я добавил некоторые ошибки и предупреждения для каждой ошибки.Предупреждающий контроллер не обнаруживает ошибку! Swift-Project
Когда я смоделировал и протестировал ошибки, например, я попытался ввести неверный адрес электронной почты, ошибка работает правильно! Но предупреждение не появляется, и оно дает мне эту ошибку, как на рисунке ниже.
Вот код:
if EmailAddressTF.text=="" || PasswordTF.text=="" || BusinessNameTF.text==""
{
let alert = UIAlertController(title: "Oops!", message:"Make sure to fill in all required textfields", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated: true){}
}
else {
if RepasswordTF.text != PasswordTF.text
{
let alert = UIAlertController(title: "Oops!", message:"You Entered Different Passwords", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated: true){}
}
else {
let ref = Firebase(url: "https://businesswallet.firebaseio.com/")
let mainpass = NSUserDefaults.standardUserDefaults().objectForKey("password") as? String
let mainEmail = NSUserDefaults.standardUserDefaults().objectForKey("Email") as? String
let isEqu = (mainEmail == self.EmailAddressTF.text)
if(isEqu == true)
{ }
else
{
ref.changeEmailForUser(mainEmail, password: mainpass, toNewEmail: self.EmailAddressTF.text, withCompletionBlock: { error in
if error != nil {
if let errorCode = FAuthenticationError(rawValue: error.code) {
switch (errorCode) {
case .EmailTaken:
print("Email taken")
let alert = UIAlertController(title: "Oops!", message:"Sorry,Email taken", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated:true){}
case .InvalidEmail:
print("invalid email")
let alert = UIAlertController(title: "Oops!", message:"invalid email", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated:true){}
case .NetworkError:
print("Network Error")
let alert = UIAlertController(title: "Oops!", message:"Network error, check your connection", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated: true){}
default:
print("Unknown Error")
let alert = UIAlertController(title: "Oops!", message:"Unknown Error", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default) { _ in })
self.presentViewController(alert, animated: true){}
}
}
} else {
NSUserDefaults.standardUserDefaults().setValue(self.EmailAddressTF.text, forKey: "Email")
print("Email changed successfully")
}
})
} //Big Else
И как я могу это исправить?
это означает, что вы представить, что предупреждение о неправильном ViewController или представлении. –
Похоже, вы пытаетесь представить контроллер предупреждения с контроллера вида, который в настоящее время не представлен. – Slayter
Но контроллер в настоящее время представлен! Я не понял!! Что это значит? – Mariah