1

我是 iPhone 开发的新手。有很多关于这个主题的书籍。但是大多数初学者指南主要关注 Interface Builder 的使用,并且缺乏有关现有内置 XCode 代码模板的信息或可以帮助我理解代码中的 MVC 实现的信息。我发现完全没有 ViewController 也可以编写工作的 iOS 程序。好吧,在我使用名为 ViewTransitions 的示例代码之后,我似乎就是这样。

所以,问题是 - 为什么可以避免在具有按钮接口的程序中实现 ViewController ?如果答案太长,您能否推荐一种涵盖该主题的教程或手册。

提前致谢。

4

3 回答 3

1

@user697562 的回答基本上是正确的:在 ViewTransitions 的情况下,控制器的角色由应用程序委托扮演。该应用程序几乎什么都不做——它只是在两个视图之间切换以演示几种可能的过渡效果——所以那里并不真正需要 UIViewController。

请注意,在 ViewTransitions 中也没有可以真正调用模型对象的内容。如果您正在寻找一个强大的 MVC 示例,ViewTransitions 并不是最好的项目。其他示例项目,例如 TheElements,可以更好地演示 MVC 的实际应用。

于 2011-04-18T22:57:01.153 回答
0

有一个概念叫做委托。一个有助于维护 MVC 的概念。它有助于将模型与控制器分开。例如: - UITableView/UICollectionView ,它知道如何显示数据和其他 ui 内容。但它不知道要显示哪个单元格或在特定索引处显示什么数据。这就是委托和委托对象发挥作用的地方。UICollectionView 处理所有视图部分,而所有非视图部分由 delgate 对象处理,它为视图提供所需的数据。这样,委托(通常是单独的视图控制器)充当数据源,而 UICollectionView 充当 ui 渲染器。

于 2016-07-19T12:35:13.300 回答
-1

在 ViewTransitions 中,有一个 App Delegate,它是您唯一的“控制器”。甚至 ViewTransitions 都有:

transition.delegate = self;    

IOS 与某些框架有点不同,因为您无法“控制”正在发生的事情。它通常使用委托模型,您将代码设置为委托,但它(IOS)处于控制之中。不过,你可以用 MVC 风格编写,只是你的“C”没有完全负责。

于 2011-04-18T17:29:11.757 回答