4

I subclassed a UITextField and wish to get a method called when it becomes first responder or resigns first responder. How can I achieve this?

Ben Lu
  • 2,982
  • 4
  • 31
  • 54

2 Answers2

12

Just override becomeFirstResponder to call your method. Something like,

    - (BOOL)becomeFirstResponder
    {
        BOOL returnValue = [super becomeFirstResponder];
        if (returnValue) {
            [self method];
        }
        return returnValue;
    }

See the docs here for more info on responder methods: http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UIResponder_Class/Reference/Reference.html#//apple_ref/occ/cl/UIResponder

EhTd
  • 3,260
  • 4
  • 19
  • 18
Matt
  • 1,586
  • 8
  • 12
1

This does not work for me. I had to become the text field's delegate and implement this delegate method:

- (void)textFieldDidBeginEditing:(UITextField *)textField{
     //call some custom code here...
}