我有一個導航控制器的故事板,導致我想要重用的UIVIewController。該UIVIewController有一個ParentUIViewController,它具有所有我正在重用的UIVIewController的所有基本功能。使用故事板重複使用自定義UIVIewController的孩子
目前我正在複製和粘貼(meh),然後我將UIViewController的類更改爲我想要使用的ChildUIVIewController(ChildUIViewController擴展了ParentUIViewController)。
但這聽起來像一個不好的解決方案。每次我想以可視方式更改ParentViewController時,我需要手動更新所有其他ChildViewController。
我試圖爲ParentViewController創建一個xib,但xib未加載because I need a xib with the name of the ChildViewController。我創建了它,然後說這個類是ParentViewController,但它在segue中崩潰。
編輯
我已經創造了我的問題
https://github.com/tiagoalmeida/storyboardexample
注意,ParentViewController擁有一套邏輯方式更加複雜,沒有說明存在的狀態的例子。另外請注意,我也在使用TableView。我希望這可以說明問題。
我必須複製並粘貼每個孩子的意見?如果兩個Childs共享相同的UI,請將文件所有者作爲您的「ParentViewController」,這與在故事板中使他們具有相同的效果:/ –
不。如果兩個孩子分享大部分相同的代碼,則創建一個新的'ParentViewController'。所以你會有這樣的:'childViewController:parentViewController:grandParentViewController'。在這種情況下,'grandParentViewController'將具有每個'UIViewController'的共同點,並且新的'parentViewController'將擁有兩個孩子的邏輯。 – Peres
每個孩子共享相同的用戶界面。所以你建議我爲每個孩子創建一個xib,並將該文件的所有者作爲ParentViewController(我將文件的所有者作爲ChildViewController)?我在你的grandParentViewController邏輯上變得有點失落。 –