如果不做特殊处理,在scrollView上添加子控件UIView添加手势,如果是拖拽,轻扫手势,会发现,不起作用个,而是scrollView处理了事件,会产生scrollerview拖动事件,这不是我们需要的效果,如何处理呢,自定义一个继承至uiscrollview的控件, 设置两个属性,self.delaysContentTouches = NO; self.canCancelContentTouches = YES;
并且:
- (BOOL)touchesShouldCancelInContentView:(UIView *)view
{
return NO;
}
//
// XBScrollView.h
// 集速配
//
// Created by aimee on 16/8/12.
// Copyright © 2016年 LiangZhongXing. All rights reserved.
// scrollView上面添加一个view做为子空间,view上面添加拖拽或清扫手势,让view手势有效
#import <UIKit/UIKit.h>
@interface XBScrollView : UIScrollView
@end
#import "XBScrollView.h"
@implementation XBScrollView
/*
scrollView上面添加一个view做为子空间,view上面添加拖拽或清扫手势,让view手势有效,
需要如下设置
*/
- (instancetype)initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame]) {
self.delaysContentTouches = NO;
self.canCancelContentTouches = YES;
}
return self;
}
- (BOOL)touchesShouldCancelInContentView:(UIView *)view
{
return NO;
}
@end