2009-07-23 100 views
1

我有一個應用程序,我有一個TabBarController有4個標籤init,當您單擊前視圖(哪個是第一個標籤)上的按鈕時,視圖會在導航視圖中上傳。現在我想使用UIImagePicker控制器拍攝照片並將其保存在第二個視圖中。當我這樣做時,模式控制器被加載,但該控制器的底部欄有按鈕選擇和取消都會被tabbar覆蓋。隱藏TabBar項目

我嘗試使用

viewController.hidesBottomBarWhenPushed = YES;

但它不隱藏tabBar。

有什麼辦法隱藏tabBar或加載modalController視圖來選擇tabBar上的圖片。

回答

0

因爲你是推視圖到導航堆棧(我相信通過使用[自pushViewController:等]),這一切都發生的導航控制器內等標籤欄始終顯示在頂部。

您需要做的是將其添加到持有導航控制器的窗口頂部。假設你有一個由應用代理擁有的單個導航控制器,你的代碼可能是這樣的:

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[appDelegate.window addSubview:myOtherViewController.view]; 

希望有所幫助!

0

@ h4xxr:我認爲你有正確的想法在這裏,但與modalViewController,它不是pushViewController,它的presentModalViewController。

@rkbang,我會嘗試做到這一點在窗口級別,也在標籤欄級別,看看是否可以工作。

另一種方法是創建一個自定義的UITabBarController稱爲隱藏的公共方法,然後就調用呈現模式的看法後。

+0

如果你寫一個方法隱藏它的代碼是什麼。就像我們如何隱藏tabBarItem一樣。 – rkb 2009-07-24 00:09:51