swift - 在swift中,如何使用结构的唯一实例来实现tableView?
问题描述
我有这个结构的一个实例:
class AlimentObjectTronque {
var aRetinol : Float = 0
var aBetacarotene : Float = 0
var vitamineC : Float = 0
var vitamineB1 : Float = 0
var calcium : Float = 0
var omega3 : Float = 0
init(aRetinol: Float, aBetacarotene: Float, vitamineC: Float, vitamineB1: Float, calcium: Float, omega3: Float) {
self.aRetinol = aRetinol
self.aBetacarotene = aBetacarotene
self.vitamineC = vitamineC
self.vitamineB1 = vitamineB1
self.calcium = calcium
self.omega3 = omega3
}
convenience init() {
self.init(aRetinol: 0, aBetacarotene: 0, vitamineC: 0, vitamineB1: 0, calcium: 0, omega3: 0)
}
}
我需要在 tableView 的每一行中放入这个结构实例的属性。
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return // ????
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
guard let cell = tableView.dequeueReusableCell(withIdentifier: "CellFind", for: indexPath) as? AlimentToAddCell else {
return UITableViewCell() }
// ????
return cell
}
我需要知道如何在表格视图的每一行中放入实例的属性。
解决方案
如果要在表格视图中显示一个实例的属性,请使用静态单元格
在 Interface Builder 中,选择
Static Cells
table view 的 Attributes Inspector 的 Content。将六个单元格拖入画布
在控制器中创建六个
UILabel
插座并将它们分别连接到单元格的文本标签,例如@IBOutlet var aRetinolLabel : UILabel! @IBOutlet var aBetacaroteneLabel : UILabel! ...
使用结构而不是类并删除所有初始化程序,您可以免费获得成员初始化程序
struct AlimentObjectTronque { var aRetinol : Float var aBetacarotene : Float var vitamineC : Float var vitamineB1 : Float var calcium : Float var omega3 : Float }
也删除
UITableViewDataSource
与UITableViewDelegate
和相关方法的一致性直接将值分配给标签。
let alimentObject = AlimentObjectTronque(aRetinol: 2.0, aBetacarotene: 3.0... aRetinolLabel.text = String(alimentObject.aRetinol) aBetacarotene.text = String(alimentObject.aBetacarotene) ...
推荐阅读
- google-cloud-platform - Google Cloud Function - 超出内存限制 (2GB) - 大量数据处理
- hbase - 仅在尚未设置时添加列值
- wordpress - GravityForms - 在条目列上有多个下拉列表字段
- html - 错误类型错误:无法读取未定义的属性“ID”(Angular 8)
- java - Spring-cloud-stream MessageConversionException
- php - Fetch API 无法加载“.php”本地文件 - React JS + PHP
- authentication - 确认表单重新提交 Laravel
- excel - 重组脚本字典代码以不删除相似数据的问题
- java-8 - 如何在 java 8 中将分页状态传递给 Cassandra 访问器接口
- vb.net - 如何在 VB.NET 中访问 C1FlexGrid ComboList 的索引?