2011-07-12 59 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

你也可以得到你的基类来创建编程的东西给你。例如。导航栏按钮/背景图像。