2013-06-21 121 views
0

我有兩個標籤欄項目與兩個不同的表視圖與導航控制器。 通過點擊tab1 --- table1正在打開...好。但是當我在table1上選擇時,它會轉到另一個視圖(表格選擇視圖)....每件事情都很好。UITabBar項目沒有選擇不工作

,但這裏的問題是

,當我點擊TAB2 ----表2是開放....好。

但是再次點擊tab1 ------它不加載table1 ....它正在加載(table did select view)視圖。我最後一次離開那裏。

我想打開table1 ----點擊tab1 ......通過編程。

幫我

回答

1

也就是說,如果您使用的是標籤欄控制器和標籤欄的項目導航控制器的預期行爲。用戶將希望該選項卡保留視圖的狀態。

如果你仍然想執行應用程序時,用戶可以追溯到選項卡,返回到導航控制器的根視圖控制器,可以實現UITabBarControllerDelegatetabBarController:didSelectViewController:方法。代表方法的作用是:

告訴代表用戶在標籤欄中選擇了一個項目。

然後調用UINavigationController稱爲popToRootViewControllerAnimated的方法:當拉片上用戶抽頭。這將幫助您:

彈出堆棧中的所有視圖控制器,除了根視圖 控制器並更新顯示。

例如:

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController 
{ 
    if(viewController == yourNavigationController) { 
     UINavigationController *navigationController = (UINavigationController *)viewController; 
     [navigationController popToRootViewControllerAnimated:NO]; 
    } 
}