UIScrollView缩放问题

时间:2012-06-26 13:32:37

标签: iphone ios image uiscrollview uiscrollviewdelegate

我有UIScrollView。当我缩放图像时,我应该先显示小图像,然后显示大图像。 如果我使用此代码,一切正常:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollViewCalled
{
    ImageScrollView *scroll = scrollViewCalled
    UIImageView *imageView = (UIImageView *)[scroll viewWithTag:kImageViewTag];
    return imageView;
}

ImageView的大小=图像的大小(如果图像很小,那么它就是小图像的大小,如果图像很大 - 大图像的大小) scrollView的ContentSize = imageView的大小。

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollViewCalled withView:(UIView *)view atScale:(float)scale
{
    ImageScrollView *scroll = scrollViewCalled
        UIImageView *imageView = (UIImageView *)[scroll viewWithTag:kImageViewTag];
    if ([self isBigImage:imageView])
    {
        return;
    }
    [self loadBigImage];
}

但如果使用此代码(当我尝试缩放时,会显示大图像,但我看到它的最大缩放比例,我无法滚动查看图像的其余部分。但是当我再缩放一个时时间而不是滚动图像,它开始正常工作,我终于可以滚动图像。但我应该缩放2次):

- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollViewCalled withView:(UIView *)view
{
    ImageScrollView *scroll = scrollViewCalled
            UIImageView *imageView = (UIImageView *)[scroll viewWithTag:kImageViewTag];
        if ([self isBigImage:imageView])
        {
            return;
        }
        [self loadBigImage];
}

为什么它不能正常用于scrollViewWillBeginZooming?我需要在缩放之前设置大图像,但不能在之后设置。

0 个答案:

没有答案