淡入淡出更换 rootViewController

- (void)restoreRootViewController:(UIViewController *)rootViewController

{
 typedef void (^Animation)(void);
 UIWindow* window = self.window;
  
 rootViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
 Animation animation = ^{
  BOOL oldState = [UIView areAnimationsEnabled];
  [UIView setAnimationsEnabled:NO];
  window.rootViewController = rootViewController;
  [UIView setAnimationsEnabled:oldState];
 };
  
 [UIView transitionWithView:window
       duration:0.5f
        options:UIViewAnimationOptionTransitionCrossDissolve
     animations:animation
     completion:nil];
}
原文地址:https://www.cnblogs.com/-ios/p/4669741.html