【发布时间】:2013-02-15 11:05:17
【问题描述】:
我有一个水平的 UIScrollView。我想做一个“pull-to-reset”动画的变体,我一直拉到滚动视图内容大小的右边缘,松开手指,让滚动视图飞回 (0, 0 ) 内容偏移。
我的委托方法如下所示:
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate {
//check if it exceeds a certain critical value
if (scrollView.contentOffset.x - (scrollView.contentSize.width - IMAGE_WIDTH) > 80) {
[self doAnimatedScrollTo:CGPointMake(0, 0)];
}
}
其中doAnimatedScrollTo: 是必要的自定义动画方法,因为我想控制动画的持续时间。
虽然这有效,但动画似乎已排队。 UIScrollView“反弹”动画首先出现,然后我的动画出现。
有没有办法取消反弹动画,保持内容偏移从“捕捉”回来,然后执行我的动画?
【问题讨论】:
-
您是否尝试取消选中属性检查器上的反弹属性?
-
@jcesar nope,因为我想要明确地反弹属性。我只是不想执行动画的第二半——即。 “反弹”。
-
那我觉得不可能。如果您使用反弹,则必须使用完全反弹。也许如果你创建一个子类,你可以改变完整的动画
标签: ios uiscrollview core-animation bounce