0

通常我们总是使用以下方法从一个视图推送到另一个视图:

[self.navigationController pushViewController:nextView animated:YES];

for some other animations we used :UIViewAnimationTransitionCurlDown / flipRight etc etc..

这些都是经常使用的,

我希望我的应用程序具有不同的过渡..

任何其他自定义转换/转换中的特殊效果..(推/弹出)或任何其他外部 api 的动画..

4

1 回答 1

7

您可以使用CATransition

CATransition *transition = [CATransition animation];
transition.duration = 1.0;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromTop;
transition.delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];

[self.navigationController pushViewController:nextView animated:YES];

您可以通过以下方式更改过渡:transition.subtype = kCATransitionFromTop;

不要忘记添加 Quartzcore 框架!

于 2013-03-06T15:24:19.607 回答