Я подклассифицировал UITableViewCell
, и в этом классе я применяю распознаватель жеста Pan:
UIPanGestureRecognizer *panning = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePanning:)];
panning.minimumNumberOfTouches = 1;
panning.maximumNumberOfTouches = 1;
[self.contentView addGestureRecognizer:panning];
[panning release];
Затем я реализую протокол делегатов, который должен допускать одновременные жесты в представлении таблицы:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return YES;
}
Затем я помещаю журнал внутри метода handlePanning
только для того, чтобы увидеть, когда он обнаружен:
- (void)handlePanning:(UIPanGestureRecognizer *)sender {
NSLog(@"PAN");
}
Моя проблема в том, что я не могу вертикально прокручивать список ячеек в представлении таблицы и что handlePanning
вызывается независимо от того, в каком направлении я панорамирую.
Я хочу, чтобы handlePanning
вызывался только при горизонтальном панорамировании, а не по вертикали. По достоинству оценят некоторые рекомендации.