如何设计具有复杂TableView的ViewController

时间:2016-04-30 13:22:50

标签: ios swift uitableview design-patterns model-view-controller

想象一下这种情况:

  • 我有10个不同的自定义UITableViewCell:一个带有文本字段, 一个带按钮,一个带有一些标签,一个带有文本视图,一个带有文本视图 使用imageView等。
  • 我有一个带有tableView的ViewController,我想显示这些单元格。
  • 显示的单元格数量可能因某些条件(以及高度,背景颜色和其他参数)而异。
  • 用户可以与这些单元格进行交互


设计这个MVC的最佳方法是什么,并尽可能保持ViewController的轻量级和可维护性? 如何利用Swift语言来做这件事? 是否有适用的着名和整合设计模式?

1 个答案:

答案 0 :(得分:1)

我将尝试分享我的一些经验:

根据以下要求创建单独的自定义 UITableViewCelll :textfield,textview,imageview,label等。此类不得依赖于数据计算,它仅适用于化妆品用户界面。这意味着必须没有像updateCellWithData :( someDATAObj)这样的方法。 这个逻辑必须进入下面讨论的某些方面。

使用您的tableview注册单独的自定义UITableViewCelll。

为您的UITableView创建单独的类(NSObject)作为数据源委托

使用类别填充自定义UITableView单元格中的数据。像updateCellWithData :( someDATAObj)。

对常量使用常量文件,例如tableView Cell的高度,重用标识符名称,通知名称。

尝试至少一些代码,然后我们可以为您提供最好的帮助。