将UITabBarController中的UINavigationController移动到第一个视图

时间:2013-08-23 02:07:26

标签: ios uinavigationcontroller uitabbarcontroller

当我收到推送通知时,我希望导航控制器返回第一个视图。标签栏已被识别,但导航控制器不会向后移动。

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {

    if (application.applicationState == UIApplicationStateInactive){

        UITabBarController *tabb = (UITabBarController *)self.window.rootViewController;
        tabb.selectedIndex = 0;

        UINavigationController *nav = (UINavigationController *)tabb.navigationController;
        [nav popToRootViewControllerAnimated:YES];
    }
}

enter image description here

1 个答案:

答案 0 :(得分:1)

我;在这一行中,你说你想要访问包含标签控制器的UINavigationController。

UINavigationController *nav = (UINavigationController *)tabb.navigationController;

但是,您似乎想要访问选项卡控制器中包含的导航控制器。

因为它是第一个控制器,你可以这样访问它:

UINavifationController *nav = (UINavifationController *)[tabb.viewControllers objectAtIndex:0];