- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
Presents a view controller modally.
In a horizontally compact environment, the presented view is always full screen. In a horizontally regular environment, the presentation depends on the value in the modalPresentationStyle property.
This method sets the presentedViewController property to the specified view controller, resizes that view controller's view based on the presentation style and then adds the view to the view hierarchy. The view is animated onscreen according to the transition style specified in the modalTransitionStyle property of the presented view controller.
The completion handler is called after the viewDidAppear: method is called on the presented view controller.
一般来说，页面跳转必须在viewDidLoad和viewDidAppear之后才能进行，如果是在presentViewController:animated:completion:的completion中跳转，可以确保页面跳转是在viewDidAppear之后进行的。否则，就会有可能提示Warning: Attempt to present on whose view is not in the window hierarchy!