2013-01-11 33 views
0

我剛剛繼承了一個完全在故事板中製作的項目。我必須在賽段之後解決一些間距和藝術資產管理不善的問題,並且我無法獲得某些組件。故事板中的UINavigationBarrier

我的問題是這個應用程序是基於UINavigationController層次結構和主屏幕不需要UINavigationBar(它與第一次加載時的圖像間距螺絲)。

項目需要符合iOS 5.1(因此不支持Autolayout或iOS 6功能)。

我需要在應用程序啓動時隱藏UINavigationBar

我可以做這個應用程序加載後,爲「解僱」:

- (void)viewWillAppear:(BOOL)animated { 

    /* Hide UINavigationBar for iPhone until a segue is performed*/ 

    [self.navigationController setToolbarHidden:YES animated:YES]; 

} 

即使改變animated:NO給出了相同的結果。

作爲一個快速簡要介紹,我已經在viewWillAppearviewDidLoadviewDidAppear中試過。

,因爲它是後駁回的觀點已加載,我覺得打電話來隱藏導航欄的的appDelegate的didFinishLaunchingWithOptions方法會做的伎倆,但由於故事板的我不知道怎麼去故事板的導航訪問控制器內的應用程序委託。

回答

0

我刪除了初始的NavigationController,在故事板中的初始ViewController之後以編程方式推送到UINavigationController

這是更長的做法(4小時前),但最終爲我工作。

感謝您的意見。

0

我可能會在這裏叫出錯誤的樹,但不能通過故事板設置它嗎?在「Simulated Metrics」下,您可以爲每個viewController定義TopBar,只需將主屏幕的viewController設置爲「None」即可。

+0

模擬度量標準只是模擬 - 它們可以幫助您將UI組件隔開,如果在同一屏幕上顯示UINavigationBar,UIToolbar和UISearchDisplay事件,則模擬度量標準允許您查看屏幕外觀如何,但您不能訪問這些對象。 – hedrick

+0

夠公平的。我以爲你根本就不需要啓動屏幕上的navigationBar。但是,如果它依賴於其他國家,那肯定會使事情複雜化。 –

+0

欣賞幫助,這很可能是我忽略的東西。我一直在跳到項目的其他部分,但我一直回到這個想法,我有一個新的思想,並再次卡住:\ – hedrick

0

將導航欄從屏幕上移開,反而如何?

+0

我試着通過創建一個CGRect更改'UINavigationBar'的框架和將新的矩形分配給導航欄的框架,但沒有任何更改。 – hedrick