2016-03-01 123 views
1

我需要隱藏標籤欄上的按鈕,但仍然可以根據需要通過代碼訪問它。我知道我可以完全刪除按鈕,但我無法再訪問該視圖。隱藏(而不是刪除)UITabBarController UITabBarItem

所以在我的情況下,我希望我的主屏幕在應用第一次加載時可見,但不希望該選項卡顯示出來。如果他們離開那個屏幕,我會在頂部的導航欄中添加一個自定義的「主頁」按鈕。

但是,如果我刪除標籤欄項目,我不再去主屏幕了,而是原來的第二個標籤。有沒有辦法只有隱藏標籤欄項目,仍然訪問它的代碼?

所以你可以看到我如何訪問標籤欄開始,這裏是我如何刪除標籤欄項目。

UITabBarController *tabVC = (UITabBarController *)self.window.rootViewController; 

NSMutableArray *tabBarViewControllers = [NSMutableArray arrayWithArray:[tabVC viewControllers]]; 
[tabBarViewControllers removeObjectAtIndex:0]; 
[tabVC setViewControllers:tabBarViewControllers]; 

//or to just disable it 

NSArray *tbItems = tabVC.tabBar.items; 
UITabBarItem *item_0 = [tbItems objectAtIndex:0]; 
[item_0 setEnabled:NO]; 

回答