【发布时间】:2010-03-08 06:07:03
【问题描述】:
我有一个 UIViewController,它根据用户交互在不同时间加载多个子视图。我最初在代码中构建了所有这些子视图,没有 nib 文件。现在我正在转向带有自定义 UIView 子类的 nib 文件。
其中一些子视图显示静态数据,我正在使用 loadNibNamed:owner:options: 将它们加载到视图控制器中。其他包含我需要访问的控件。
我(某种程度上)理解 Apple 说每个内容屏幕使用一个视图控制器的原因,使用通用控制器对象 (NSObjects) 来管理屏幕的子部分。
所以我需要一个视图控制器、一个通用控制器、一个视图类和一个 nib。我如何将这些放在一起?
我的工作假设和后续问题:
- 我会将视图类与 “班级身份”下降中的笔尖 在 IB 下。
- 视图控制器将协调 整体屏幕交互。什么时候 必要时,它会创建一个实例 通用控制器。
- 通用控制器是否加载 笔尖?怎么样?
- 我是否定义了出口和行动 在那个视图类中,或者他们应该是 在通用控制器中?
- 如何在 视图控制器和泛型 控制器?
如果有人能以这种方式向我指出一些使用控制器的示例代码,它将大大有助于我理解。我读过的所有书籍或 stackoverflow 帖子都还没有达到目标。
【问题讨论】:
-
这里是苹果文档: 注意:如果你想将一个屏幕分成多个区域并分别管理每个区域,使用通用控制器对象(从 NSObject 降级的自定义对象)而不是视图控制器对象管理屏幕的每个子部分。然后使用单个视图控制器对象来管理通用控制器对象。视图控制器协调整个屏幕交互,但根据需要将消息转发到它管理的通用控制器对象。
标签: iphone cocoa-touch uiviewcontroller subview