2011-07-12 92 views
3

我的應用有一個UITabBar。大部分選項卡都具有相似的功能,儘管它們在重要方面有所不同。
爲了避免重複代碼,我想創建一個類(BaseViewController),其中處理所述類似的功能,並使用此(FirstViewControllerSecond等)的子類,以控制獨特的功能。繼承UIViewController類

這樣做的最好方法是什麼?
我設想的一個問題是,如果我創建xib和視圖控制器,如何將xib中的元素連接到基本視圖控制器?

    > FirstTabViewController 
BaseViewController > SecondTabViewController 
        > ThirdTabViewController 

回答

2

FirstTabViewController,SecondTabViewController,et al。將繼承BaseViewController的出口和動作,所以你將UI元素連接到你的子類,就像你對基類一樣。

4

如果BaseViewController已IBOutlet中的屬性,他們的行爲只是在Interface Builder繼承的類一樣。你需要做的就是拖拽你的連接。

1

本質上你需要創建一個UIViewController子類,它將成爲你的基礎。我們將稱之爲MyBaseVC。

接下來你會繼續前進,創造你的其他三個視圖控制器類(MyVC1,MyVC2,MyVC3)就像你做的第一個。在它們的頭文件中,使用MyBaseVC替換UIViewController。這些將成爲MyBaseVC的子類。

然後在你的Interface Builder中的身份檢查文件,你會爲您創造MyVC1,MyVC2任何視圖控制器的自定義類,MyVC3

2

你也可以得到你的基類來創建編程的東西給你。例如。導航欄按鈕/背景圖像。