2011-09-28 45 views
0

我是iOS平台的新手,我听说过MVC架构。 要画一个圆,我只是创建一个单独的UIView类并重写drawRect:并能够做到这一点。如何通过以下MVC架构绘制圆圈

但是现在我想用MVC体系结构重建同一个项目。主要目的是将我的模型部分从视图中分离出来&控制器部分。所以我可以扩展我的项目。

那么我该如何做到这一点?

任何示例应用程序供参考?

+0

这对我没有多大意义。绘制一个圆圈,只是视图的一部分。绘制一个圆圈没有涉及的模型或控制器。您需要MVC更复杂的东西。 – Ishtar

+0

其实我想改变它的形状,大小和颜色。然后可以在圆上执行各种操作,如旋转,缩放,平移...最后将所有数据保存在持久存储区中,例如NSCoding/NSKeyedArchiver。 – user930195

回答

1

我不确定你想分开什么。绘制一个圆圈通常会适合MVC架构的“视图”部分,这是您已经完成的任务。例如,将改变圆的颜色的代码将存在于“控制器”部分中,该部分在iOS上是UIViewController。如果你有东西存储圆圈看起来像什么(即大小,颜色等)的信息,那么可以将其视为模型的一部分,并可以存储在它自己的类中,由视图控制器拉入并传递给查看什么时候它是neede。

以下是可能有所帮助的链接。

http://www.bit-101.com/blog/?p=1969

至于事物的模型方面,核心数据是一种技术,可以提供帮助。

http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html#//apple_ref/doc/uid/TP40001075

0

的分离将是在一个模型中的drawRect绘图代码和的大小和位置与控制器获得该圆从模型属性以及请求该图并传递属性到视图。该模型可能是另一个类或API提供的类,如NSDictionary。

通过创建一个单独的模型,如果有多个圆圈,控制器可以进行多个绘制请求,每个模型圈一个。或者可能存在多个视图,即圆圈将被绘制在不同的表示中,例如一个视图中归属的圆圈的文本列表以及另一个视图中的图形圆圈。

许多模式看起来微不足道,并不是特别有用,但在真实世界的程序工作中很不错。