UIButton在tableViewCell中不能高亮问题

创建一个 UIScrollerView或UITableView的子类.
将下面代码复制到子类中

-(BOOL)touchesShouldCancelInContentView:(UIView *)view{
    if ([view isKindOfClass:[UIButton class]]) {
        return YES;
    }
    return [super touchesShouldCancelInContentView:view];
}

-(instancetype)initWithFrame:(CGRect)frame style:(UITableViewStyle)style{
    if (self = [super initWithFrame:frame style:style]) {
        self.delaysContentTouches = NO;
        for(id view in self.subviews){
            if ([NSStringFromClass([view class]) isEqualToString:@"UITableViewWrapperView"]) {
                if ([view isKindOfClass:[UIScrollView class]]) {
                    UIScrollView *scroll = (UIScrollView *)view;
                    scroll.delaysContentTouches = NO;
                }
                break;
            }
        }
    }
    return self;
}

使用这个子类即可.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。