问题描述
我目前正在使用Swift开发应用程序,当我在iPhone 6(运行iOS 12.4.6)上运行应用程序时,出现了一个奇怪的问题。
我有一个UITableView
,里面有许多UITableViewCell
,并且这些单元格包含一个UIButton
,backgroundColor
需要根据特定条件进行更新。问题在于,只有第一个单元格无法正确加载颜色,相反,只有在UITableView
重用该单元格之后,才加载颜色。
在UIViewController
内(在同一设备上)之前,我也遇到过类似的问题,我几乎没有通过从backgroundColor
方法转移用于控制viewDidLoad
的代码来解决此问题。到viewWillLayoutSubviews
方法。
我认为这与情节提要板覆盖了一些值有关,我已经尝试在awakeFromNib
内的UITableViewCell
上设置条件,但没有任何变化,实际上我无法弄清楚还有什么可能导致此问题。
解决方法
问题解决了,我实际上已经按照建议尝试将代码放入DispatchQueue.main.async中,并且工作正常,没有任何问题。