这是我的覆盖代码 - 它只是计算捕捉到的位置:
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset {
if(targetContentOffset->y < 400) {
targetContentOffset->y = 0;
return;
}
int baseCheck = 400;
while(baseCheck <= 10000) {
if(targetContentOffset->y > baseCheck && targetContentOffset->y < baseCheck + 800) {
targetContentOffset->y = (baseCheck + 340);
return;
}
baseCheck += 800;
}
targetContentOffset->y = 0;
}
当我按住手指超过一两秒以拖动滚动视图然后抬起手指时,它通常会动画到位。但是,当我快速“轻弹”它时,它很少动画 - 它只是捕捉到 targetContentOffset。我正在尝试模拟默认分页行为(尝试捕捉到自定义位置除外)。
有任何想法吗?