// Scale up on button press - (void) buttonPress:(UIButton*)button { button.transform = CGAffineTransformMakeScale(1.1, 1.1); // Do something else } // Scale down on button release - (void) buttonRelease:(UIButton*)button { button.transform = CGAffineTransformMakeScale(1.0, 1.0); // Do something else } [btn addTarget:self action:@selector(buttonPress:) forControlEvents:UIControlEventTouchDown]; [btn addTarget:self action:@selector(buttonRelease:) forControlEvents:UIControlEventTouchUpInside]; [btn addTarget:self action:@selector(buttonRelease:) forControlEvents:UIControlEventTouchUpOutside]; [btn addTarget:self action:@selector(buttonRelease:) forControlEvents:UIControlEventTouchCancel]; [btn addTarget:self action:@selector(buttonRelease:) forControlEvents:UIControlEventTouchDragExit];