По умолчанию при пролистывании представления мапкита карта перемещается. Отлично.
Если я хочу отойти от представления карты и загрузить представление другого контроллера представления, как мне это сделать? Я мог бы добавить кнопку для этого, но я бы хотел использовать жесты.
Спасибо
СЛЕДУЮЩИЙ КОД РАБОТАЕТ:
(1) В файле заголовка контроллера представления карты я добавил UIGestureRecognizerDelegate для поддержки своего протокола.
(2) В файле .m контроллера представления карты я добавил
- (BOOL) gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
(3) В контроллерах представления карты я добавил метод viewDidLoad:
UISwipeGestureRecognizer *leftSwipe =
[[[UISwipeGestureRecognizer alloc]
initWithTarget:self action:@selector(leftSwipeReceiver:)] autorelease];
leftSwipe.direction = UISwipeGestureRecognizerDirectionLeft;
leftSwipe.delegate = self;
[self.view addGestureRecognizer:leftSwipe];
(4) Эта функция слежения вызывается для свайпа влево
- (void)leftSwipeReceiver:(UIGestureRecognizer *)recognizer
{
NSLog(@"leftSwipeReceiver:");
}
shouldRecognizeSimultaneouslyWithGestureRecognizer
и вернуть YES. См. нижнюю половину этого answer, который объясняет, как с UITapGestureRecognizer, но это та же идея. - person   schedule 05.10.2011