如何正确分离视图和控制器?

Posted

技术标签:

【中文标题】如何正确分离视图和控制器?【英文标题】:How separate the view and controller correctly? 【发布时间】:2012-07-09 21:03:27 【问题描述】:

我有问题。我想在我的主视图中自定义一个按钮,所以,在 viewDidLoad 这个视图的控制器中,有这个代码:

   [self.buttonGenerate setBackgroundImage:[[UIImage imageNamed:@"blueButton.png"] stretchableImageWithLeftCapWidth:10 topCapHeight:10] forState:UIControlStateNormal];
    [self.buttonGenerate setBackgroundImage:[[UIImage imageNamed:@"blueButtonHighlight.png"] stretchableImageWithLeftCapWidth:10 topCapHeight:10] forState:UIControlStateHighlighted];

但是,我不确定相对于 MVC 模式是否好,这段代码在我的控制器中,而它应该在视图代码中。 你的意见 ?有什么好的做法?

(对不起我的英语)

谢谢你

【问题讨论】:

【参考方案1】:

理想情况下,它会在您的视图代码中。

这是 Apple 文档中关于 MVC 设计模式的 link。

【讨论】:

【参考方案2】:

您可以在此处找到有关how to separate view logic from view controller 的文章。希望对你有帮助:)

【讨论】:

以上是关于如何正确分离视图和控制器?的主要内容,如果未能解决你的问题,请参考以下文章

构建日历时如何分离逻辑和表示代码?

如何在容器视图和主视图控制器之间正确传递数据

来自 Xib 文件的 IBAction 以分离视图控制器

在分离的视图控制器上呈现视图控制器

如果当前视图控制器被呈现并推送,如何展开到正确的视图控制器?

Objective-c 如何正确管理多个视图和控制器