iOS 不要将触摸转发到以下视图

iOS do not forward touches to views below

在我的应用程序中,我有 UIScrollView,它有很多 UITableView。在这个 table 的单元格中有 UISlider。如果用户在 table 视图上做出滚动手势,我如何禁用触摸转发?现在,如果用户在滑块附近(但不在其上)做出滚动手势,则触摸事件会转发到滚动视图。

您可以子class UIScrollView 并将此方法添加到新的class

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {

    UIView *result = [super hitTest:point withEvent:event] ;
    self.scrollEnabled = ![result isKindOfClass:[UISlider class]] ;
    return result ;

}