我的程序由帶有5個選項卡的標籤欄組成。標籤1,2和3的用戶界面是相同的,唯一的區別在於內容表示的邏輯,例如, new,top ...我在故事板中有一個ViewController鏈,我的問題是如何重用我的ViewControllers?重複使用ViewControllers的故事板中的標籤欄IOS5
2
A
回答
1
你想重用你的視圖控制器代碼文件的.m和.h或者你希望重新使用具有UI故事板的對象?
重複使用您的代碼很容易完成。每個故事板對象可以與一個自定義類相關聯。它的身份在右側的對象檢查器上。您可以將相同的視圖控制器類分配給一個或多個故事板對象 - 允許您重新使用您的代碼。
如果你想重用你,你在故事板創建的視圖佈局和重複使用相同的故事板,但不同的視圖控制器類 - 來管理不同的功能 - 這是目前不可能。
一個潛在的解決辦法是通過增加一個XIB文件,並把你的用戶界面,在定義一個自定義的UIView。然後創建一個自定義的UIView子類並分配它。然後在故事板中,您可以初始化自定義視圖並將其添加爲子視圖。您將引用自定義類來管理UI。
除非你的用戶界面是非常複雜的,它通常是更容易簡單地重新創建單獨的故事板的用戶界面和相應的視圖控制器分配給他們。您可以使用cmd-d複製故事板,或者直接複製並粘貼。在將UI對象連接到任何代碼之前,應該先執行此操作,因爲有時複製和粘貼操作將繼承舊引用。
所以,設置你的TabBar控制器,單獨的導航控制器連接到每一個標籤,然後連接的圖控制器(視圖或tableview中或的PageController等)作爲根視圖到每個導航控制器。然後設置您的UI,然後分配您的自定義子類,然後將UI連接到您的子類中的屬性。請記住,您可以在故事板中的多個視圖控制器中重複使用您的子類,因爲每個故事板都將創建該子類的新實例。您可能只需要一些額外的邏輯即可在每個選項卡功能上正確地管理事情。
也沒有代碼,只是我的0.02 新年快樂。
相關問題
- 1. 故事板中標籤欄的菜單
- 2. iOS5故事板UIPageViewController
- 3. 標籤欄與ios故事板
- 4. ios5 ios5故事板應用程序
- 5. 關於使用故事板的標籤欄
- 6. 使用使用新的故事板的功能與iOS標籤欄控制器iphone的iOS5
- 7. 故事板ViewControllers中的多態性
- 8. Xcode:如何在iOS5故事板中添加新標籤頁?
- 9. 使用swift更改故事板標籤欄圖標
- 10. 使用故事板iOS5傳遞對象
- 11. TabelViewController with ios5中的故事板
- 12. 與標籤欄控制器一起使用多個故事板
- 13. 如何使用故事板更改標籤欄選定圖像
- 14. 動態更改故事板中的標籤欄
- 15. 如何在帶故事板的標籤欄中有Splitview?
- 16. 故事板標籤約束
- 17. 灰色方塊代替標籤欄中的圖像。我使用故事板
- 18. 使用核心數據與故事板中的標籤欄控制器
- 19. 如何使用故事板更改iOS5中的初始視圖?
- 20. Mapcall在IOS5中與故事板
- 21. 使用故事板時,從視圖控制器移動到標籤欄控制器ioS5
- 22. 標籤欄項目不在故事板中顯示
- 23. Xcode標籤欄項目在故事板中不可見
- 24. 更改標籤的內容,故事板
- 25. 標籤欄項目圖像不會隨着故事板的使用而改變
- 26. 重用故事板
- 27. iPhone iOS5故事板更改導航欄外觀
- 28. 重複使用故事板中涉及的細節UIViewController
- 29. 使用故事板重複使用自定義UIVIewController的孩子
- 30. 標籤欄標題失蹤時重構,以故事情節
非常感謝,新年快樂!我已經完成了大部分的描述 - 因爲UI在幾個選項卡中類似,我剛剛複製粘貼的View控制器並連接到選項卡導航控制器(全部在故事板中執行)。 –
問題是我有singleton類來保持全局變量,所以我想我需要爲每個選項卡有幾個單例類,第二個問題是我不知道如何確定哪個標籤導航控制器調用了視圖控制器爲了執行特定的數據排序,請給出建議... 1.是否有幾個單例是正確的?,2.如何確定哪個導航控制器管理我的視圖控制器? –
Hi @David - 你會發現很多關於使用單例的爭論。就我個人而言,我沒有使用它的問題,但我的最佳實踐建議是這樣的:如果您需要存儲一個或兩個屬性,使用應用程序委託,它實際上是一個方便的單例。如果你有很多屬性和方法,那麼就分離出一個小目的,併爲此目的限制你的單例。避免使用不同功能填充你的單身人士的誘惑,因爲它往往會導致意大利麪代碼。如果你需要在你的tabbar視圖控制器中共享一個模型,單身是一個好方法。 – CocoaEv