19

可能重复:
用于推送 UIViewController 的自定义动画

你们中的任何人都实现了在 UINavigationController 中制作自定义动画,例如从中间扩展?(例如,当您从启动器视图中选择新闻提要时的 Facebook 应用程序)

我看到了一个技巧,比如为所需的下一个控制器的视图设置动画,但我使用的是 Three20 框架并且很难获得下一个控制器视图。

所以我唯一的选择是使用 CATransition。使用这段代码,我可以设法获得某种接近我想要的动画。

CATransition* transition = [CATransition animation];
transition.duration = 1;
transition.timingFunction = [CAMediaTimingFunction
functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionFade;
transition.subtype = kCATransitionReveal;
[self.navigationController.view.layer addAnimation:transition forKey:kCATransition];

它会做什么?它将动画褪色类型的动画。我想要的是从 CABasicAnimation 缩放视图框架。

anim.fromValue = [NSValue valueWithCATransform3D:CATransform3DMakeScale(0.1, 0.1, 1.0)];
anim.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeScale(1.0, 1.0, 1.0)];

你们知道如何实现这一目标吗?类似于 CATransition 中的转换动画。

4

0 回答 0