jmcastel
jmcastel

Reputation: 1365

Passing from one to three text field in swift

In order to make my log in screen easy to use, I would like to :

The first part work, wich means I can move from username to password textField, but when I press in the password keyboard, nothing happens.

Any idea ?

class SignUpViewController: UIViewController, UITextFieldDelegate {

@IBOutlet var emailSignUpTextField: UITextField! = UITextField ()
@IBOutlet var userNameSignUpTextField: UITextField! = UITextField ()
@IBOutlet var passwordSignUpTextField: UITextField! = UITextField ()


func textFieldShouldReturn(textField: UITextField!) -> Bool {


    if (userNameSignUpTextField){
        userNameSignUpTextField.resignFirstResponder()
        passwordSignUpTextField.becomeFirstResponder()
    }

    else {
        passwordSignUpTextField.resignFirstResponder()
        emailSignUpTextField.becomeFirstResponder()
    }


    return true

}

override func viewDidLoad() {
    super.viewDidLoad()

    userNameSignUpTextField.delegate = self
    passwordSignUpTextField.delegate = self
    emailSignUpTextField.delegate = self


}

Upvotes: 0

Views: 1180

Answers (1)

Bhumeshwer katre
Bhumeshwer katre

Reputation: 4671

First check all outlet connection are correct or not.

Now change if condition to isFirstResponder()

func textFieldShouldReturn(textField: UITextField!) -> Bool {
    if (userNameSignUpTextField.isFirstResponder()){
        userNameSignUpTextField.resignFirstResponder()
        passwordSignUpTextField.becomeFirstResponder()
    }

    else if(passwordSignUpTextField.isFirstResponder()) {
        passwordSignUpTextField.resignFirstResponder()
        emailSignUpTextField.becomeFirstResponder()
    }

    return true
}

Hope it will help you

Upvotes: 4

Related Questions