Search code examples
objective-cnslog

Log UIControlEventAllTouchEvents Name


I have a UITextField to which i have added an action for all kind events

[textField addTarget:self action:@selector(log:)forControlEvents:UIControlEventAllTouchEvents];

Now in log: method I would like output event name

- (void)log:(id)sender {
 NSLog(@"%@",event);
}

Solution

  • Instead of:

    [textField addTarget:self action:@selector(log:)forControlEvents:UIControlEventAllTouchEvents];
    

    use:

    [textField addTarget:self action:@selector(log:event:)forControlEvents:UIControlEventAllTouchEvents];
    

    and implement the action method with two arguments: (id)sender and (UIEvent *)event:

    - (void)log:(id)sender event:(UIEvent *)event