Используйте для этого NSObject performSelector: withObject: afterDelay:
- он установит NSTimer, который выполняет селектор для вас. В обработчике нажатия кнопки:
...
myLabel.hidden = NO;
[self performSelector:@selector(hideView:) withObject:myLabel afterDelay:3];
...
- (void) hideView:(UIView*)inView{
// You can also add animation here
view.hidden = YES;
}
Обратите внимание, что не гарантируется, что hideView:
будет вызван ровно через 3 секунды.