2010-01-15 80 views

回答

2

由於每個UIViewController都有自己的導航項(導航欄中的一組視圖),因此必須在每個視圖控制器的-viewDidLoad方法中添加相同的按鈕。如果在你的應用程序的每個地方使用相同的按鈕,那麼創建UIViewController的子類就可以做到這一點,並且可以在整個應用程序中重用這個子類。

+0

感謝您的回覆,每個viewController都有它的導航項, 但蘋果怎麼做。因爲瞬間視圖轉換,那麼按鈕也是固定的。這意味着他們不會在每個視圖中添加它。 – Nishit 2010-01-15 13:04:58

+1

你的意思是什麼蘋果的應用程序?如果我正確理解你的問題,當你點擊一個標籤欄按鈕(在屏幕的底部)時,沒有導航欄動畫,因爲整個UINavigationController的層次結構立即被替換,包括導航欄。但是,當導航堆棧被動畫推/拉時,導航欄中會出現交叉淡入淡出效果,其中一組視圖淡出,另一組淡入。假設您將UIViewController B推到控制器A的頂部。如果他們都有相同的右導航欄按鈕,你只是看不到效果。 – Costique 2010-01-15 14:25:46

+0

是的,我在iPod.app中看到它,但它看起來就像其他地方一樣。 「正在播放」按鈕項目在每個控制器的導航項目中,這使得它看起來好像不是動畫。 – Costique 2010-01-15 14:41:09

相關問題