我正在从事一个客户项目。我在 ViewDidLoad 中编写了很多 View 自定义代码。我有数据存储和访问的模型。 该项目运行良好。他们聘请了一位新的 iOS 开发人员,他说该代码不符合 MVC 架构。对方问原因为何?他说 View 是在 viewDidLoad 内部创建的,它是类的 Controller ,因此它不是可接受的代码。当它的真正动态 View 无法使用 Storyboard 创建时我们该怎么办。
最佳答案
我的答案是不
来自苹果文档
Controller Objects
A controller object acts as an intermediary between one or more of an application’s view objects and one or more of its model objects. Controller objects are thus a conduit through which view objects learn about changes in model objects and vice versa. Controller objects can also perform setup and coordinating tasks for an application and manage the life cycles of other objects.
我认为 Controller 有责任管理 View 的外观。
在viewDidLoad
中,最好在这里编写一次性 View 自定义代码。
但是如果你给一个 View 写了很多配置代码。我认为最好使用 UIView 的子类。这使您的代码清晰且易于调试和维护。
关于ios - 在 viewDidLoad 中编写代码是否违反 MVC 架构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30367431/