UIView上的纸张“展开”动画

时间:2012-06-05 16:39:23

标签: iphone objective-c xcode core-animation

我想为屏幕上显示的UIView创建一个“展开”动画。 可以在审核this YouTube video应用的SuperList中查看动画的示例(可以在截屏部分的应用程序的App Store页面中查看动画的另一个示例)。

Paper 'Unfold' Animation

我对Core Animation和Objective C非常了解,就像Cocoa和Cocoa Touch一样。该应用程序将支持iOS的5.x和4.x版本,因此,如果可能的话,我宁愿选择适合这两种情况的解决方案。

此外,我已经用Google搜索了这个问题大约一千次而未能得到任何答案,所以非常感谢帮助。谢谢你,iLyrical。

1 个答案:

答案 0 :(得分:2)

显然,'UnCurl'效果是内置的框架,是您的使用! 您所要做的就是使用animateWithDuration: animation:类的UIView方法并按如下方式包含动画:

[UIView animateWithDuration:1.0
                     animations:^{
                         CATransition *transition = [CATransition animation];
                         [transition setDelegate:self];
                         [transition setDuration:0.7];
                         [transition setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]];
                         [transition setType:@"pageUnCurl"];
                         [self.view.layer addAnimation:transition forKey:@"pageUnCurl"];
                         [self.view addSubview:someView.view];
                     }];

在这种情况下,音符图像(白页)具有透明部分(所有侧面),因此当发生uncurl时,看起来只有白色部分是开始的。