iPhone上单个视图的多个视图控制器

iPhone上单个视图的多个视图控制器,iphone,uiviewcontroller,interface-builder,Iphone,Uiviewcontroller,Interface Builder,想想一个基于iPhone的电子邮件客户端。在同一UI中有三种“状态”:新建消息、回复和转发(忽略任何其他状态) 我想有一个视图,并有不同的视图控制器接口的看法。鉴于视图是在Interface Builder中构建的(有很多iOutlet和iAction),那么最好的方法是什么?一种方法是创建一个包含所有Interface Builder连接的视图控制器,然后多次对该视图控制器进行子类化。在代码中,您可以使用相同的nib对所有子类进行实例化 或者,视图控制器可以具有某种“模式”值,该值根据其应处于

想想一个基于iPhone的电子邮件客户端。在同一UI中有三种“状态”:新建消息、回复和转发(忽略任何其他状态)


我想有一个视图,并有不同的视图控制器接口的看法。鉴于视图是在Interface Builder中构建的(有很多iOutlet和iAction),那么最好的方法是什么?

一种方法是创建一个包含所有Interface Builder连接的视图控制器,然后多次对该视图控制器进行子类化。在代码中,您可以使用相同的nib对所有子类进行实例化


或者,视图控制器可以具有某种“模式”值,该值根据其应处于的状态确定其行为。呈现它的视图控制器将负责适当地设置它。

一种方法可能是创建一个包含所有Interface Builder连接的视图控制器,然后多次将该视图控制器子类化。在代码中,您可以使用相同的nib对所有子类进行实例化


或者,视图控制器可以具有某种“模式”值,该值根据其应处于的状态确定其行为。然后,呈现它的视图控制器将负责对其进行适当设置。

我认为您所说的没有真正意义

同一个视图控制器(即“您的应用程序”本质上)只会在这三种需求之间变化

此外-这三个视图似乎不太可能完全相同,因此生成三个不同的视图/控制器

(有许多“相似”的视图是完全正常的——这些视图实际上只是单独的视图,但它们恰好在图形上相似。)

此外,您很可能有一个整体视图(/controller),而仅仅坐在其中就是特定的写/读/任何视图(/controller)


我希望有帮助

我认为你所说的没有真正意义

同一个视图控制器(即“您的应用程序”本质上)只会在这三种需求之间变化

此外-这三个视图似乎不太可能完全相同,因此生成三个不同的视图/控制器

(有许多“相似”的视图是完全正常的——这些视图实际上只是单独的视图,但它们恰好在图形上相似。)

此外,您很可能有一个整体视图(/controller),而仅仅坐在其中就是特定的写/读/任何视图(/controller)


我希望有帮助

不要那样做,这是不受支持的。一个视图控制器总是负责一个视图层次结构。@Jason在不同的视图控制器中重用一个视图没有错,这就是拥有一个视图控制器的首要目的。您如何创建这些新的视图控制器?你能把兴趣的观点传给我吗?ie[viewController setStateView:currentStateView];不要那样做,这是不受支持的。一个视图控制器总是负责一个视图层次结构。@Jason在不同的视图控制器中重用一个视图没有错,这就是拥有一个视图控制器的首要目的。您如何创建这些新的视图控制器?你能把兴趣的观点传给我吗?ie[viewController setStateView:currentStateView];