何时拆分视图和控制器

时间:2011-11-08 22:08:55

标签: iphone objective-c ios model-view-controller design-patterns

我经常不会正确地分割视图和控制器相关的东西。

  1. 如果我想在我的应用程序中使用自定义uibutton和背景并在我的视图中添加样式相关的东西,或者我应该在我的控制器中处理这个,我应该总是子类化uiview吗?或者可能是uibutton的子类?

  2. 对齐怎么样?什么时候我应该将uiview子类化,添加按钮并对齐然后在我的控制器中处理它?<​​/ p>

  3. 感谢您的提示! 如果不清楚,请留下一些评论。

1 个答案:

答案 0 :(得分:0)

  

如果我想要自定义uibutton,我应该总是将uiview子类化   我的应用程序中的背景,并在我的视图中添加样式相关的东西

如果您的需求是基本的,那么您只需将想要的元素作为视图的子视图插入,而无需将任何子类化为子类。按钮和视图具有足够的属性来处理这些简单的需求。但一切都取决于这些需求。

  

我应该在控制器中处理这个吗?或者可能是子类a   的UIButton?

为UIButton行为子类化UIButton行为并不是一个坏主意:-)但如前所述,您需要什么作为特殊行为?特殊形象:有一个属性。对事件的特殊反应,将其管理到IBActions的控制器上。一个带有UFO行为的UIButton,好吧,让我们将它子类化。

  

对齐怎么样?什么时候我应该继承uiview,添加按钮   它然后对齐然后在我的控制器中处理它?<​​/ p>

嗯......我想永远不会。这可以(应该)在控制器中完成。控制器控制整个UIItems。因此,如果您想将一个项目与另一个项目对齐,请将其放入控制器中。如果要对显示在按钮中的特殊图形或文本进行对齐,请对其进行子类化并在drawRect方法中对其进行管理。