在UIWebView中动画化图像

时间:2012-01-13 06:07:52

标签: iphone objective-c ios ipad uiwebview

我在flipboard应用程序上看到了这一点,他们在UIWebView中基本上有一个图像,然后当你点击图像时它会带你全屏,你可以捏缩放/缩小。我的问题基本上是关于如何创建像他们所拥有的动画,似乎他们在UIWebView上的图像是动画的。如果你有一个应用程序,尝试通过flipboard进入你的Facebook提要并触摸图像,你会看到我的意思。以下是第一个和最终视图的一些屏幕截图:

enter image description here enter image description here

通常在Web视图中,这些图像存储为链接,并且需要执行一些下载以提取该图像并向其添加手势识别器。他们怎么这么快就做到了?

1 个答案:

答案 0 :(得分:0)

您正在谈论的UI部分(图像的顶部)不是UIWebView。它有自己的某种自定义UIView显示内容的预告片。底部淡出部分是原始文章的UIWebView。

我想象实现它的方式是在图像上设置轻击手势识别器,并且当点击发生时将图像的缩小版本设置为屏幕的完整大小。

处理点击手势的代码可能看起来像这样(非常非常简单):

-(void)_imageTapOccured:(UITapGestureRecognizer *)gesture {
    [UIView animateWithDuration:2.0 animations:^{
        imageView.frame = CGRectMake(0.0f, 0.0f, widthOfScreen, heightOfScreen);
    }];
}

然后他们也可能会处理水龙头将图片更改回原始大小:

-(void)_imageTapAtFullScreen:(UITapGestureRecognizer *)gesture {
    [UIView animateWithDuration:2.0 animations:^{
        imageView.frame = originalRectSize;
    }];
}