この次のメソッドをファイルに貼り付けてAppDelegate.m
、変更したいときに特定のメソッドを呼び出すだけですUINavigationController
...
例:あなたがの中v2
にいN1
て、通知が変更された場合、次のような次のメソッドを呼び出します...
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate setRootViewControllerN2];
アニメーション付きのナビゲーションコントローラーを切り替えるには、この次のメソッドを使用します。
1. setRootViewControllerN1 : これは、N1 navigationController を使用して RootViewController を設定するためのものです。
-(void)setRootViewControllerN1{
self.window.rootViewController = N1;
[self.window makeKeyAndVisible];
CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setType:kCATransitionFade];
[animation setDuration:0.5];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:
kCAMediaTimingFunctionEaseInEaseOut]];
[[self.window layer] addAnimation:animation forKey:kAnimationKey];
}
2. setRootViewControllerN2 : これは、N2 navigationController を使用して RootViewController を設定するためのものです。
-(void)setRootViewControllerN2{
self.window.rootViewController = N2;
[self.window makeKeyAndVisible];
CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setType:kCATransitionFade];
[animation setDuration:0.5];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:
kCAMediaTimingFunctionEaseInEaseOut]];
[[self.window layer] addAnimation:animation forKey:kAnimationKey];
}