[英]Can't set textColor of UILabel
我目前正在處理源自UITableViewCells Xibs的動態表單。
if disabled {
self.passTitleLabel.textColor = UIColor(named: "Dark Blue")
self.textField.textColor = UIColor(named: "Dark Blue")
} else {
self.passTitleLabel.textColor = UIColor(named: "Light Blue")
self.textField.textColor = .white
}
UILabel( passTitleLabel
)保留在Storyboard文件上設置的顏色,並且不會按預期更改。 UILabel已啟用且未突出顯示,但仍保留情節提要板上的顏色。
所有顏色都在其他類中起作用(它們位於Assets.xcassets
)。 標簽已通過IBOutlet正確設置。
遇到同樣的問題,花了我一段時間,但終於找到了答案。 看起來您的UITableViewCell或UICollectionViewCell在后台線程中運行,與UI相關的操作需要在主線程中完成,否則可能導致這些類型的問題。
if disabled {
DispatchQueue.main.async {
self.passTitleLabel.textColor = UIColor(named: "Dark Blue")
self.textField.textColor = UIColor(named: "Dark Blue")
}
} else {
DispatchQueue.main.async {
self.passTitleLabel.textColor = UIColor(named: "Light Blue")
self.textField.textColor = .white
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.