2012-06-12 73 views
0

在我的tabBar應用程序,我有一個導航欄在視圖的頂部。不過,我有超過4個tabBars,因此TableView可以選擇其他的選項。IOS - 第5和第6 tabBar選項

如果最終用戶決定改變他們的訂單,有沒有辦法隱藏前4個視圖的導航?

我是這樣想的,但是這個代碼中的if語句是不正確的。

if([[self.tabBarController viewControllers] objectAtIndex:5]) 
{ 
    [_navBar setHidden:YES]; 
} 
else { 
    [_navBar setHidden:NO]; 
} 

回答

0

如果你擔心用戶重新訂購你的標籤,你可能會招待另一種方法是創建一個自定義MoreViewController(並且沒有重新排序)。請參閱this SO回答。

+0

ALright我會研究一下 - 在這種情況下,重新排序並不是很重要,但如果最終用戶有選擇,會更好。 –

0

你改變在的TabBar視圖的訂單後,您應該然後隱藏導航欄這樣

[self.tabBarController.viewControllers 
    enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) 
{ 
    if (index < 4) 
    { 
     UIViewController *vc = (UIViewController *)obj; 
     [vc.navigationController setNavigationBarHidden:YES]; 
    } 

}]; 
+0

對不起,這在我的情況下不起作用 –