2011-09-08 92 views
0

隱藏我使用這個代碼添加自定義UIImageViewUINavigationBarUINavigationBar的自定義標題由背景

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 400, 44)]; 
... 
[self.navigationItem setTitleView:label]; 
[label release]; 

但在某些:

UIImageView *background = [[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 44)] autorelease]; 
[background setImage:[UIImage imageNamed:@"nav_background.png"]]; 
[background setTag:kTagForReference]; 
[self.navigationController.navigationBar insertSubview:background atIndex:0]; 

我使用此代碼,然後添加自定義標題我的推送視圖標題被隱藏(或不可見)。如果沒有標題消失,我似乎無法將兩個以上的視圖推入堆棧。

我試圖強制我的UIImageView背景到酒吧的後面,但這仍然沒有幫助。我已經打印了UINavigationBar的子視圖,我可以看到UILabel在那裏,我只是看不到它!

任何幫助將不勝感激。

回答

0

您很可能想使用UIToolBar而不是NavigationBar。然後,您可以將子視圖添加到UIToolbar

將UILabel帶到最前面的視圖。

[self.view bringSubviewToFront: label]; 
+0

如果我使用了'UIToolbar',那麼我的所有導航棧會發生什麼? – Ricky

+0

只要您將UIToolbar添加到您的控制器,並且只隱藏NavigationBar,則完全沒有任何問題。您甚至可以設置「返回」或「完成」按鈕來彈出或取消導航控制器。 – WrightsCS