У меня есть проблема в моем приложении, где у меня есть метод с именем signUpButtonTapped
:
@objc func signUpButtonTapped(_ sender: Any) {
if !areFieldsValid()! {
// some error in textfield
theScrollView.scrollToTop()
}else { /* create user */ }
Как вы можете видеть, я вызываю метод areFieldsValid()
, который проверяет все мои textFields
на пару вещей, включая то, не взято ли имя пользователя или нет:
//MARK: Validate Fields
func areFieldsValid() ->Bool? {
var isValid = true
// check if username is valid
checkUsername(field: usernameTextField.text!) { (success) in
if success == true {
// username is taken
print("Username is taken")
self.setupUsernameTextField()
self.checkUsernameImage.image = UIImage(named: "false")
self.checkUserNameLabel.text = "Benutzername ist bereits vergeben"
isValid = false
}
}
return isValid
}
Проблема, с которой я столкнулся, заключается в том, что пользователь создается, даже если имя пользователя уже занято и areFieldsValid
должно фактически вернуть false
, но программа все еще продолжается ... Я думаю, это потому, что данные все еще загружаются во время работы программы? Я понятия не имею, как решить эту проблему, поэтому я благодарен за любую помощь!