1. ViewController提供了一个 presentViewController: *target animated: YES completion:^(void) 方法可以跳转到指定的target中,跳转的时候可以指定动画。
[target setModalTransitionStyle:UIModaltransitionStyle]可以指定跳转时的动画,IOS系统提供了四中跳转动画,默认的是垂直切换动画。
Transition styles available when presenting view controllers.
typedef enum {
UIModalTransitionStyleCoverVertical = 0,
UIModalTransitionStyleFlipHorizontal,
UIModalTransitionStyleCrossDissolve,
UIModalTransitionStylePartialCurl,
} UIModalTransitionStyle;
2. 通过方法1中提供的方法切换ViewController,需要自己添加返回按钮,为按钮添加消息响应
[self dismissViewController animated:YES completion:nil];即可对应的动画返回启动此ViewController的启动界面。
IOS官方文档对此的解释是:
The presenting view controller is responsible for dismissing the view controller it presented. If you call this method on the presented view controller itself, it automatically forwards the message to the presenting view controller.
If you present several view controllers in succession, thus building a stack of presented view controllers, calling this method on a view controller lower in the stack dismisses its immediate child view controller and all view controllers above that child on the stack. When this happens, only the top-most view is dismissed in an animated fashion; any intermediate view controllers are simply removed from the stack. The top-most view is dismissed using its modal transition style, which may differ from the styles used by other view controllers lower in the stack.
If you want to retain a reference to the receiver’s presented view controller, get the value in the presentedViewController property before calling this method.
The completion handler is called after the viewDidDisappear: method is called on the presented view controller
本文介绍了如何使用UIViewController中的presentViewController方法实现不同类型的过渡动画效果,并详细解释了如何通过设置UIModalTransitionStyle来选择动画样式,同时给出了返回原始视图控制器的方法。
270

被折叠的 条评论
为什么被折叠?



