gpt4 book ai didi

ios - 使用可重复使用的单元仅设置一次单元的正确方法?

转载 作者:行者123 更新时间:2023-11-30 12:16:32 24 4
gpt4 key购买 nike

我正在寻找在 Swift 中使用可重用单元的正确方法。

如何使 setup 方法仅被调用一次?

override func viewDidLoad() {
super.viewDidLoad()
self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "AwesomeCell")
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCell(withIdentifier: "AwesomeCell") as UITableViewCell? ?? UITableViewCell()
self.setup(cell: cell) // I want this to be called only once
cell.textLabel?.text = self.data[indexPath.row]
return cell
}

func setup(cell: UITableViewCell) {
cell.accessoryType = .disclosureIndicator
}

谢谢。

最佳答案

如果您使用类注册单元格,那么您应该将其放入单元格的 init(style:reuseIdentifier:) 初始值设定项中。当您调用 dequeueReusableCell(withIdentifier:for:) 时,这就是被称为它的初始值设定项, TableView 还无法重用它。

如果您向 Xib 注册了 cell,请使用 cell 的 init(coder:)

关于ios - 使用可重复使用的单元仅设置一次单元的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45367682/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com