首页 > 解决方案 > 在相同类型的 3 个单独的静态 TableViewCell 上设置内容

问题描述

我有一个表格视图,其中一个原型单元仅使用了 3 次。该单元格上有一些按钮,用于触发在单元格内显示和隐藏内容。

我可以重复使用单元格,但这需要大量重置每个单元格,以便如果我扩展 A 的内容,B 的内容在加载时不会扩展。此外,这需要我在 Controller 类中保留状态记录,我希望所有这些都由 Cell 本身处理以实现模块化。换句话说,将每个单元格保持在正确阶段的工作量似乎是低效的。

解决此问题的最佳方法是什么?我使用静态单元格吗?有没有办法实例化 3 个相同类型的单独单元并将它们放在 TableView 中?

标签: iosswiftuitableview

解决方案


您当然可以在单元本身内部拥有所需代码的模块化部分。如果您不想重用单元格,请case为每个单元格类型添加一个自定义初始化程序。在您的委托方法内部cellForRow

return CustomCell(type: .myCustomType)

如果你这样做,你可以在单元格的初始化器中添加一个开关,并根据它们的类型设置单元格。我假设“静态”是指三个实例。您可以通过告诉代表它需要的单元格数量将单元格“添加”到表格中,这反过来又会调用cellForRow x次。


推荐阅读