本文介绍了翻转过渡 uinavigationcontroller push的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用以下代码将 UIViewController 推送到导航堆栈中
I am pushing a UIViewController in a navigation stack using the following code
[UIView animateWithDuration:0.75
animations:^{
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[self.navigationController pushViewController:ViewController animated:NO];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO];
}];
现在,当我按下返回时,我希望它执行相同的动画,但它不起作用.知道为什么吗?
Now when I press back I want it to do the same animation but its not working. Any idea why?
在 ViewController.m 中
in ViewController.m
[UIView animateWithDuration:0.75
animations:^{
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[self.navigationController popToRootViewControllerAnimated:NO];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.navigationController.view cache:NO];
}];
推荐答案
其实过渡应该是这样的
//主视图
[UIView transitionWithView:self.navigationController.view
duration:0.75
options:UIViewAnimationOptionTransitionFlipFromRight
animations:^{
[self.navigationController pushViewController:viewcontroller animated:NO];
}
completion:nil];
//在视图控制器中
[UIView transitionWithView:self.navigationController.view
duration:0.75
options:UIViewAnimationOptionTransitionFlipFromLeft
animations:^{
[self.navigationController popToRootViewControllerAnimated:NO];
}
completion:nil];
这篇关于翻转过渡 uinavigationcontroller push的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!