将临时NavigationController添加到根视图

时间:2015-04-19 14:43:58

标签: ios swift uikit

我正在处理我的应用程序的推送通知处理。从通知中打开应用程序时,我想“推送”具有相关内容的新视图控制器。

我的根控制器是TabBarController,因此无法使用它。

我想一个解决方案是将导航控制器添加到我的root,然后使用它来推送到新的控制器。

这是推荐的方法吗?或者这里有最佳做法吗?

1 个答案:

答案 0 :(得分:0)

以下代码将执行您要执行的操作。但是,您需要以某种方式允许用户不要忽略此ViewController返回常规UI。

- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
      UIApplicationState state = [application applicationState];

     if (state == UIApplicationStateInactive || state == UIApplicationStateBackground) {

          YourViewController *vc = [[YourViewController alloc] init];
          [self.window addSubview:vc.view];

          [self.window.rootViewController presentViewController:viewController animated:NO completion:nil];
     } 
 }