我有一个动画,它在手势识别器(双击)触发时启动:
[UIView animateWithDuration:0.3 animations:^{
_scrollView.contentOffset = CGPointMake(x, y);
_scrollViewContentView.frame = someFrame;
_scrollViewContentView.layer.transform =
CATransform3DMakeScale(1.f/_zoomScale, 1.f/_zoomScale, 1.f);
}];
它工作得很好,除了在一种情况下:如果scrollViewWillBeginDecelerating
在动画执行之前没有调用委托方法(只是通过几乎不拖动我的滚动视图)。
我只是调用了scrollViewDidEndDragging
方法。我可以等待 20 秒然后播放我的动画。除了我的contentOffset
.
委托方法本身什么都不做,它们只是被添加来查看问题可能出在哪里。
我不知道为什么。
编辑:这是我的问题的视频。第 1 阶段:减速滚动,第 2 阶段没有。看看最后的位置。阶段 1 是正确的,但不是阶段