遇到这样一个需求,半屏分页滚动轮播图,每次滑动一个 cell 的宽度
原理:创建一个和你 scrollView,让它的宽等于你需要分页的宽,为了让旁边的页显示出来,我们设置它的属性:
self.scrollView.layer.masksToBounds = NO;
self.scrollView.pagingEnabled = YES;
这样我们就可以得到自定义距离的分页滑动了
但是可滑动区域只在中间部分,我们增大它的滑动区域
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
if ([self.layer containsPoint:point]) {
return scrollView; // 如果需要点击上面的 view ,返回这个 view 就可以了
}
return [super hitTest:point withEvent:event];
}
demo地址:
https://github.com/xiaoxiaoxiaoxuan/CustomPageScroll