Search code examples
iosobjective-ciphoneswiftuitextfield

how to add an action on UITextField return key?


I have a button and text textfield in my view. when i click on the textfield a keyboard appears and i can write on the textfield and i also able to dismiss the keyboard by clicking on the button by adding:

[self.inputText resignFirstResponder];

Now I want to enable return key of keyboard. when i will press on the keyboard keyboard will disappear and something will happen. How can I do this?


Solution

  • Ensure "self" subscribes to UITextFieldDelegate and initialise inputText with:

    self.inputText.delegate = self;
    

    Add the following method to "self":

    - (BOOL)textFieldShouldReturn:(UITextField *)textField {
        if (textField == self.inputText) {
            [textField resignFirstResponder];
            return NO;
        }
        return YES;
    }
    

    Or in Swift:

    func textFieldShouldReturn(_ textField: UITextField) -> Bool {
        if textField == inputText {
            textField.resignFirstResponder()
            return false
        }
        return true
    }