UIscrollView动画不顺利

时间:2015-07-29 09:30:15

标签: ios uiscrollview xcode6

代码:

-(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{

    int diff = end-start;

    if (diff>0)
    {
        k = k + 95;
    }
    else {

        k = k - 95;
    }

     [scrollView setContentOffset:CGPointMake(k, 0) animated:YES];
}

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
        start = scrollView.contentOffset.x;
}

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
        end = scrollView.contentOffset.x;

}

我有一个包含3个标签的滚动视图。 leftSide 90像素宽,中心90像素宽,右边90像素宽。每个标签有5像素间隙。当滚动视图向左或向右滚动时,我对齐屏幕的下一个或上一个标签中心。逻辑工作正常。但是动画不顺畅在开始动画之后还有一个停顿。我如何解决这个问题?。我如何加快动画效果?任何帮助都将受到赞赏。

2 个答案:

答案 0 :(得分:1)

您可以通过调整持续时间值,通过以下方式调整滚动速度。

[UIView animateWithDuration:0.5 animations:^{
        _scrolview.contentOffset = CGPointMake(k, 0);
    }];

答案 1 :(得分:0)

我认为更好的方法是使用UIScrollView的

pagingEnabled = YES;

并且您不需要上述委托方法。确保已设置contentSize。