淡入淡出更换 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 ];
}

你可能感兴趣的:(controller)