2010-09-15 60 views
1

我有一個導航控制器,我不想使用整個屏幕。特別是,我想在屏幕頂部的欄中放置徽標圖像。不幸的是,導航控制器似乎不是這樣設計的。在界面構建器中,我無法讓它佔據屏幕的一部分。您如何實現頂部的徽標圖像以及佔據屏幕其餘部分的導航控制器?不使用整個屏幕的導航控制器

回答

2

我自己並沒有這樣做,但它應該非常直截了當。你需要的包裝視圖控制器是其母公司(姑且稱之爲MyWrapperViewController),其視圖層次結構可能最終是這個樣子:

 
UIView -+ (hooked up to the view outlet in MyWrapperViewController) 
     | 
     +-- UIView (Your logo goes here) 
     | 
     +-- UIView (The "child" navigation controller's view) 

標誌視圖可以是UIView,或UIImageView,或內容適合哪類課程。

當你創建一個UINavigationController某處你MyWrapperViewController類,你可以調整其viewbounds到的東西比全屏幕(可能是屏幕大小減去你的標誌的大小,小的有適當origin偏移,因此它的下面標識),然後將其添加爲子視圖。

+0

這大部分工作,但我遇到了頂部UIView [重疊狀態欄]問題(http://stackoverflow.com/questions/3767066/layered-uiviewcontrollers-overlaps-status-bar) – Casebash 2010-09-23 00:34:34