Tôi đang cố gắng tìm ra cách điều này được thực hiện đúng cách . Tôi đã cố gắng mô tả tình huống:
Tôi đang thêm a UITableView
dưới dạng một lượt xem phụ của a UIView
. Phản hồi UIView
với một lần chạm và pinchGestureRecognizer
, nhưng khi làm như vậy, chế độ xem bảng ngừng phản ứng với hai cử chỉ đó (nó vẫn phản ứng với các lần vuốt).
Tôi đã làm cho nó hoạt động với đoạn mã sau, nhưng rõ ràng đó không phải là một giải pháp hay và tôi chắc chắn rằng có một cách tốt hơn. Điều này được đưa vào UIView
(chế độ xem siêu tốc):
-(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:
hoặcpointInside:withEvent:
.