2009-07-20 84 views
22

好的,我真的很新的iphone开发,我已经得到了我的知识很远。我只需要帮助决定如何将这些4-6幅图片编入我的项目。UIView vs UIViewController

我基本上想制作一本漫画书,用户可以从一张图片滑动到另一张图片。所有这些图片都应该放在UIVIEW还是UIViewController中?

以及关于连接这些图片的任何提示,以便我可以添加代码进行触摸将会很棒!

回答

41

UIViewController无法显示任何内容;它只是协调UIView的显示。所以实际的图片需要在UIView中完成。另外,你的UIView负责识别触摸,手势等。这就是它结束的地方;你的程序的实际反应应该由UIViewController决定。

换句话说,你会教一个UIView子类如何识别向左或向右滑动,一旦它确定发生了滑动,它会通知你的UIViewController子类的事件。然后控制器会决定接下来要显示的图像,并告诉视图进行设置。

这是Model-View-Controller模式的一部分。这是iPhone开发中众所周知和广泛使用的模式,因此您可以很好地阅读它。

4

您将使用两者。 Cocoa Touch开发遵循MVC(模型,视图,控制器)方法。它是分离代码逻辑和用户界面元素的一种方式。 UIView是你处理它看起来像的地方,UIViewController是你处理事件的类。如果您想要通过多页内容轻松浏览,请查看UIPageControl。

4

的图片需要(通过addSubview)被添加到一个UIView对象或子类从UIView的如UIControl,UIScrollView的物体等

你也许并不需要创建一个视图类自己的,例如MyView。我发现创建自定义视图的唯一真正原因是效率或高度动态的内容,例如文本或图像在视图中移动。如果你不打算实现drawRect函数,不要打扰自定义视图。

想要UIViewController的子类。它将管理你的视图的行为,并且通常是组成它控制的视图的最佳位置。

UIPageControl可能是实现滑动行为的最简单方法,但它可能非常棘手 - 仔细阅读文档。