通知后,在app delegate的标签栏中推送视图控制器

时间:2010-06-06 13:29:49

标签: iphone uinavigationcontroller uitabbarcontroller appdelegate

我在每个标签页面都有一个带标签栏和导航控制器的应用程序。 我已经设置了一个通知,当用户午餐时,可以通过按警报上的操作来获取应用午餐。

我想将用户重定向到其中一个控制器内的其中一个视图。

我试过这个:

- (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif {
    NSArray *data = [notif.userInfo objectForKey:@"todoDate"];
    NSInteger ind = [[data objectAtIndex:2] integerValue];

    QuickViewController *detailViewController ;
    detailViewController = [[QuickViewController alloc] initWithNibName:@"QuickViewController" bundle:nil];

    detailViewController.title = @"Edit";
    detailViewController.personName = [data objectAtIndex:0];
    detailViewController.DelitionDate=[data objectAtIndex:1];
    detailViewController.personCategory=@"NO Category";
    detailViewController.personID = ind r ;

    rootControler.selectedIndex = 1;
    [rootControler.tabBarController.selectedViewController.navigationController pushViewController:detailViewController animated:YES];
}

但是没有发生任何事情(没有崩溃),除了:rootControler.selectedIndex = 1;

当我尝试时: presentModalViewController

我完全看到了视图但没有导航控制器。

感谢 SHANI

1 个答案:

答案 0 :(得分:1)

当你真的想以detailViewController作为根视图推送UINavigationController时,听起来好像在推动detailViewController。尝试这样的事情:

QuickViewController *detailViewController ;

detailViewController =
[[QuickViewController alloc] initWithNibName:@"QuickViewController"
                                      bundle:nil];

UINavigationController *navigationController =
[[UINavigationController alloc] initWithRootViewController:detailViewController];

[detailViewController release];

...

[rootControler.tabBarController.selectedViewController.navigationController 
pushViewController:navigationController animated:YES]