Próbuję dowiedzieć się, jak to się robi we właściwy sposób . Próbowałem zobrazować sytuację:
Dodaję UITableView
jako podrzędny od a UIView
. Do UIView
reaguje na zaczepów i pinchGestureRecognizer
, ale gdy robi tak, tableview przestaje reagować na tych dwóch gestów (wciąż reaguje na kiepskie piwo).
Zrobiłem to z następującym kodem, ale oczywiście nie jest to przyjemne rozwiązanie i jestem pewien, że jest lepszy sposób. Jest to umieszczane w UIView
(nadzorze):
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
if([super hitTest:point withEvent:event] == self) {
for (id gesture in self.gestureRecognizers) {
[gesture setEnabled:YES];
}
return self;
}
for (id gesture in self.gestureRecognizers) {
[gesture setEnabled:NO];
}
return [self.subviews lastObject];
}
hitTest:withEvent:
lubpointInside:withEvent:
.