我正在开发一个应用程序,其中我使用两个导航控制器和uilocalNotification
第一个NavigationViewController N1有两个ViewControllers v1和v2 第二个NavigationViewController N2有两个ViewControllers v3和v4
此外,当应用程序在后台时,如果出现UILocalNotification并且如果我点击它,应用程序应检测哪个导航控制器和哪个viewController显示,然后切换到另一个navigationController的viewcontroller。
例如: - 如果显示N1中的v2,则 点击通知后, 然后显示在N2中切换到v3
怎么做?
答案 0 :(得分:1)
只需在您的AppDelegate.m
文件中粘贴此方法,并在想要更改UINavigationController
时调用特定方法...
例如:如果您在v2
的{{1}}并且通知已更改,请调用贝娄方法,如下方...
N1
将此波纹管方法用于带动画的开关导航控制器..
<强> 1。 setRootViewControllerN1 :这是用于设置带有N1 navigationController的RootViewController。
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate setRootViewControllerN2];
<强> 2。 setRootViewControllerN2 :这是用于设置带有N2 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];
}
我希望这对你有所帮助