gpt4 book ai didi

swift - awakeFromNimb 不会在 TableView reloadData Swift 上被调用

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

我有一个 iPad TabBar 导航应用程序,在 OrderViewController 中,我在左侧有一个表格 View ,在 view 的右侧有一个 socket ,就像某种 Split View一样 Controller 。当您单击 tableViewcell 时,它会在另一半屏幕上显示详细信息。当我为 A/B 测试引入两种不同的配色方案时,我使用一个开关来执行颜色更改。 tableViewcells 颜色切换面团不成功。在 viewWillAppear 中添加 reloadData() 并没有解决问题。除了单元格之外,所有内容都会更新,它们保持第一次创建时的颜色。我在整个阶段中添加了打印,并且我检测到该单元的 awakeFromNimb 仅在第一次被调用。如何在 tableView.reloadData() 上调用它?一如既往,非常感谢。

awakeFromNib():

override func awakeFromNib() {
super.awakeFromNib()
configureUi()
}

viewWillAppear():

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(true)
self.configureFetchedResultsController()
orderTableView.delegate = self
orderTableView.dataSource = self
configureUI()
orderTableView.reloadData()
}

最佳答案

使用tableView委托(delegate)willDisplayCell

https://developer.apple.com/documentation/uikit/uitableviewdelegate/1614883-tableview

class MyCustomVC: UITableViewDelegate {

override func tableView(_ tableView: UITableView,
willDisplay cell: UITableViewCell,
forRowAt indexPath: IndexPath) {

guard var cell = tableView.dequeueReusableCell(withIdentifier: "yourReuseIdentifier", for: indexPath) as? YourCustomCell else {
return UITableViewCell()
}

cell.configureUi()
}

}

关于swift - awakeFromNimb 不会在 TableView reloadData Swift 上被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56042220/

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