如何缩放滚动的图像?

时间:2011-03-16 07:11:35

标签: iphone

我想做一个动画,其中我在滚动视图中有不同的图像。我希望当图像进入中心时,它应该像在Net-a-porter杂志应用程序中完成的动画一样缩放...

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

使用滚动视图委托查找要缩放的图像视图。

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
CGPoint pt= scrollView.contentOffset;
CGSize content_size=,scrollView.contentSize;
//find out image to be zoomed and call animateCurrentImage
}

在imageview的中心音符中为图像设置动画。

- (void)animateCurrentImage:(UIImageView *)currentImage {



    if(prevImage)
    {

        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:1];
        prevImage.transform=CGAffineTransformIdentity;
        [UIView commitAnimations];

    }


    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1];
    currentImage.transform=CGAffineTransformMakeScale(1.2, 1.2);
    [UIView commitAnimations];


    [self notePreviousImage:currentImage];


}
- (void)notePreviousImage:(UIImageView *)currentImage 
{
    prevImage=currentImage;
    [prevImage retain]; //only if required

}

答案 1 :(得分:0)

您可以尝试使用zoomScale属性或-zoomToRect:animated:方法。

如果您想使用zoomScale请注意使用animation更改UIViewAnimation块内的比例。