2010-05-17 40 views
0

任何人都可以总结下列项目之间的关系吗?iPhone。查看架构

  1. 内容的浏览
  2. 视图控制器
  3. 笔尖
  4. 认为,UIView的
  5. 应用程序代理的子类

我对这些很困惑。有人说,“内容视图”包含“笔尖”,而其他人则认为“内容视图”和“笔尖”不包含对方。

非常感谢!

回答

1

哦,男人......这并不容易。但我会尝试。

  • 正在从main()启动应用程序。
  • 应用程序委托在runloop期间接收来自应用程序的回调。例如,当应用程序完成启动或其他事情。
  • 通常应用程序包含UIWindow的单个实例,即所有视图层次结构的根。
  • UIWindow可以有UIViews,它们可以有自己的UIViews。所以,有一个UIViews(树)的层次结构
  • 每个视图都有控制器,它获取用户输入和其他事件并控制UIView(例如,告诉它由于用户点击而重绘本身)。控制器可以是开发人员编写的标准或定制的。
  • 内容视图是普通视图。通常在一个表格单元格内。 UITableViewCell实例有一个名为contentView的属性。这是一个普通的视图,它可以是任何UIView子类。

NIB是另一回事。您可以自己创建整个视图层次结构。但是有另一种方法:使用Interface Builder。在界面构建器中创建视图/子视图后,可以将此层次结构及其所有属性保存为单个(序列化)文件。并在应用程序运行期间一次加载它。

NIB有三个主要对象。文件所有者是一个对象,当你发送一些消息像

+ (BOOL)loadNibNamed:(NSString *)aNibName owner:(id)owner 

这里所有人将充满了从NIB文件所有者的所有属性,你会得到。

急救员 - 首先接收输入。你现在可以简单地忘掉它。

查看 - 是主视图。通常它链接到文件所有者的视图属性。

这是所有这些东西的简短概述。你必须阅读文档才能更好地理解它。