Swift自定义单元格布局TableView决策



我需要在iPhone应用程序中显示一个表:

在编译时,单元格的数量和内容都不为人所知,只是在运行时才知道。

每个单元格的视图可能不同,一个单元格有textField,另一个单元格可能有其他视图控件。

我应该考虑静态细胞还是原型细胞?我应该考虑tableViewController还是有tableview的viewController?

在开始编码之前,有什么需要考虑的吗?提前感谢

  • 对于"运行时单元格的动态编号"问题,您可以在准备好数据源的任何时候调用表视图的重载数据
  • 原型细胞应该毫无问题地使用
  • 简单的表视图就足以完成任务
  • 您必须在代码或情节提要中为每种类型的单元格创建单元格,1表视图可以有多种类型的原型单元格,只需对它们进行不同的命名,然后只创建数据最适合的特定单元格的对象
  • 这并不难,但一定要非常小心地处理数据源

我应该考虑静态细胞还是原型细胞?

如果您知道单元格可能需要适当显示数据的所有可能的子视图组合,并且它们相对较少,则为每个创建一个原型。例如:

  1. 一个文本字段
  2. 两个标签
  3. 一个图像视图和一个标签

否则,只需使用普通的UITableViewCell(无子类化),并在重用子视图时在运行时移除/添加子视图(即在方法-tableView:cellForRowAtIndexPath:内部)。

我应该考虑tableViewController还是使用tableview的viewController在里面?

我选择UIViewController+UITableView而不是UITableViewController的原因是,例如,如果我需要表视图只占用主视图边界/屏幕的部分,并在其余部分显示其他子视图,则仅限于。否则,使用UITableViewController可以"免费"获得很多东西,因此从零开始实现所有这些都毫无意义。

您必须选择原型单元格,您可以根据需要创建不同类型的单元格。对u来说,任何想法都可以,u可以创建表视图控制器或视图控制器。

最新更新