2

我有一个 UIView,我在其上添加了 PanGestureRecognizer,我的 UI 将表现得像平移,并且在平移手势结束后,它应该继续沿该方向移动并减速。我已经做到了。以街区显示减速

[UIView animateWithDuration:slideFactor*2
                      delay:0
                    options:UIViewAnimationOptionCurveEaseOut | UIViewAnimationOptionAllowUserInteraction
                 animations:^{
                     _movieView.center = finalPoint;
               } completion:nil];

现在在动画过程中,如果它识别出另一个触摸或点击或平移,它应该在那个点停止。因此,可以进行进一步的平移。

我的 PanGestureRecognizer 选择器方法正在做这样的事情。

if ([panGesture state] == UIGestureRecognizerStateChanged)
{
    [self mpvGestureStateBeginOrChanged:panGesture];
}
if ([panGesture state] == UIGestureRecognizerStateEnded)
{
    [self mpvGestureStateEnd:panGesture];
}
if ([panGesture state] == UIGestureRecognizerStateBegan) 
{
    [self.view.layer removeAllAnimations];
    // It stops at the final end position of the view
    // I want to stop animation right at the this point.
}

注意由于 UI 的一些限制,我不能使用 UIScrollView。请给我一些建议或解决问题

4

0 回答 0