Свайп вправо иногда не работает

У меня есть приложение, в котором прокрутка осуществляется свайпом. Работает более-менее.

Ну мой код

UISwipeGestureRecognizer *oneFingerSwipeLeft = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(foneFingerSwipeLeft:) ] autorelease];
[oneFingerSwipeLeft setDirection:UISwipeGestureRecognizerDirectionLeft];
[[self view] addGestureRecognizer:oneFingerSwipeLeft];

и

UISwipeGestureRecognizer *oneFingerSwipeRight = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(foneFingerSwipeRight:) ] autorelease];
[oneFingerSwipeRight setDirection:UISwipeGestureRecognizerDirectionRight];
[[self view] addGestureRecognizer:oneFingerSwipeRight];

в моих глазах это точно так же, кроме Имен и направлений. И тот же код затем снова используется для подъема и опускания.

Теперь странное поведение: влево, вверх, вниз работает без проблем, вправо работает только один раз. Я получил этот код из учебника и использовал его с левым и правым в другом приложении, там он работал без проблем.

Кто-нибудь знает, как я могу это решить. Я прочитал здесь много вопросов по этому поводу, но у большинства людей проблема в том, что это никогда не работает, мое решение работает примерно с одной из четырех попыток.


person zen    schedule 20.09.2012    source источник
comment
Вы уверены, что жест всегда начинается с self.view ?   -  person A-Live    schedule 20.09.2012
comment
ну 100% конечно нет, но 95%. Причем вверх, вниз и влево работает всегда, вправо очень редко.   -  person zen    schedule 20.09.2012
comment
Какие еще элементы управления есть в self.view?   -  person Max Ballo    schedule 20.09.2012


Ответы (1)


У меня была аналогичная проблема с жестом смахивания. Есть ли в вашем представлении какие-либо другие элементы управления, такие как ScrollViews? Если это так, вам следует взглянуть на свойство «canCancelContentTouches».

person FrankZp    schedule 20.09.2012
comment
Кнопки есть, а больше ничего. - person zen; 25.09.2012