ios - 在相同类型的 3 个单独的静态 TableViewCell 上设置内容
问题描述
我有一个表格视图,其中一个原型单元仅使用了 3 次。该单元格上有一些按钮,用于触发在单元格内显示和隐藏内容。
我可以重复使用单元格,但这需要大量重置每个单元格,以便如果我扩展 A 的内容,B 的内容在加载时不会扩展。此外,这需要我在 Controller 类中保留状态记录,我希望所有这些都由 Cell 本身处理以实现模块化。换句话说,将每个单元格保持在正确阶段的工作量似乎是低效的。
解决此问题的最佳方法是什么?我使用静态单元格吗?有没有办法实例化 3 个相同类型的单独单元并将它们放在 TableView 中?
解决方案
您当然可以在单元本身内部拥有所需代码的模块化部分。如果您不想重用单元格,请case
为每个单元格类型添加一个自定义初始化程序。在您的委托方法内部cellForRow
:
return CustomCell(type: .myCustomType)
如果你这样做,你可以在单元格的初始化器中添加一个开关,并根据它们的类型设置单元格。我假设“静态”是指三个实例。您可以通过告诉代表它需要的单元格数量将单元格“添加”到表格中,这反过来又会调用cellForRow
x次。
推荐阅读
- angular - Angular2 中类似 React 的组件上下文
- python - 有效地将 A lil 矩阵的第 i 行复制到 B lil 矩阵的第 j 行
- sharepoint - Sharepoint 工作流 2013,在项目已被特定人员修改时运行
- php - wordpress 中的 Razorpay 插件不起作用
- protractor - 如何在 Protractor 中写入 Excel 文件
- qt5 - 如何使用大球体上的纹理作为背景?
- python - 多类分类:连续多列的 SMOTE 过采样
- python - Pandas 将每 N 列除以固定列
- python - AttributeError:即使安装了 opencv-contrib-python,'module' 对象也没有属性 'face'
- javascript - CSS - 调整大小和溢出隐藏属性不适用于绝对位置