0

我有一个问题,我想在水平滚动视图中的图像上放一点旋转动画。当它们滑入和滑出时,它们应该旋转。有谁知道如何做到这一点?我希望它们在我滚动时旋转。

我尝试了一些东西,但是当我滚动时它不旋转(只有第一张图片)我做了这样的事情:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    int page = scrollView.contentOffset.x / scrollView.frame.size.width;
    UIImageView *view = [scrollView.subviews objectAtIndex: page];

    if(scrollView.contentOffset.x > lastX)
    {
        NSLog(@"scroll right");
        [view setTransform: CGAffineTransformMakeRotation(M_PI / scrollView.contentOffset.x + 0.1)];

    }
    else if(scrollView.contentOffset.x < lastX)
    {
        NSLog(@"scroll left");
        [view setTransform: CGAffineTransformMakeRotation(M_PI / scrollView.contentOffset.x - 0.1)];
    }
    else
    {
    }
4

1 回答 1

0

您可以使用 CGAffineTransformRotate。但在你必须设置 imageView 的锚点之前。默认情况下,它设置为 (0.5, 0.5),即图像将从中心旋转。

[UIView animateWithDuration:1 delay:0 options:UIViewAnimationOptionCurveEaseOut animations:^{
    imageView.transform= CGAffineTransformMakeRotation(degreeInRadians); // -- 2 --
} completion:^(BOOL finished){
    // left blank
}];
于 2013-04-04T09:57:22.170 回答