2012-01-16 69 views
0

我使用包含5個選項卡的IB創建tabbarcontroller,每個選項卡都包含一系列視圖控制器。如何從tabbarcontroller中選擇特定的視圖控制器?

tab1-廠景,視圖2

TAB2 - VIEW3

TAB3 - view4-view5-view6

TAB4 - view7

tab5 - view8-view9

我在這裏使用uilocalnotification 點擊通知後,我想從tab3打開view6。

這是我的代碼

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 

    UIApplicationState state = [application applicationState]; 

    if (state == UIApplicationStateInactive) { 

        application.applicationIconBadgeNumber = 0; 
        [[UIApplication sharedApplication] cancelAllLocalNotifications]; 

    view6 *v6 = [[view6 alloc] initWithNibName:@"view6" bundle:nil]; 
     [v6 showmyvalues]; //showmyvalues is the method in view6 

    } 
} 

我也試試這個代碼

view6 *v6 = [[view6 alloc] initWithNibName:@"view6" bundle:nil]; 
    UINavigationController *navigationController = 
    [[UINavigationController alloc] v6]; 


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

回答

0

你的問題不是很清楚。請提供更詳細的解釋,說明您正在嘗試做什麼以及實際發生了什麼。

從我的理解,我覺得你必須根據一定的條件在屏幕上放置一個viewController。嘗試(僅用於調試)這些提示:

  1. 保持存儲基於什麼樣的viewController你必須在屏幕上顯示一定值的全局變量。

  2. 查看方法UIViewController的方法,如viewDidLoad,viewWillAppear等,這應該是你檢查你的全局變量來決定應該呈現哪個視圖控制器的地方。

另外,看看this post