Код, который вы вставили, должен работать:
[btn addTarget:self action:@selector(method1) forControlEvents:UIControlEventTouchUpInside];
[btn addTarget:self action:@selector(method2) forControlEvents:UIControlEventTouchDown];
Я делаю это все время. Обычно для TouchDown и TouchUp. Тот факт, что method2 не вызывается, является ошибкой. У вас есть NSLog () в начале method2?