Вы можете использовать UIGestureRecognizer. В частности, вы ищете UILongPressGestureRecognizer
Вам следует создать экземпляр и прикрепить его к представлению, на котором вы хотите отслеживать жест:
UILongPressGestureRecognizer* gestureRecognizer = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)];
[view addGestureRecognizer:gestureRecognizer];
Тогда в вашем методе-обработчике вы сделаете все остальное:
- (void)handleGesture:(UILongGestureRecognizer *)recognizer {
if (recognizer.state == UIGestureRecognizerStateBegan) {
} else if (recognizer.state == UIGestureRecognizerStateEnded) {
}
}
РЕДАКТИРОВАТЬ: для реализации popover, посмотрите на WEPopover