【发布时间】:2020-02-22 16:41:11
【问题描述】:
我正在尝试为UISearchbar 中的占位符文本设置颜色。现在我有以下代码。它不会在 iOS 13 上将占位符文本设置为白色。它适用于 iOS 12。在 iOS 13 中似乎有问题或支持已被删除?
我进行了很多搜索并尝试了一些解决方法,但都不起作用。我也尝试为文本字段设置属性文本颜色,但这也不会改变颜色。
有没有可行的解决方案?
class CustomSearchBar: UISearchBar {
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override func awakeFromNib() {
super.awakeFromNib()
self.sizeToFit()
// Search text colour change
let textFieldInsideSearchBar = self.value(forKey: "searchField") as? UITextField
textFieldInsideSearchBar?.textColor = UIColor.white
// Search Placeholder text colour change
let placeHolderText = textFieldInsideSearchBar!.value(forKey: "placeholderLabel") as? UILabel
placeHolderText?.textColor = UIColor.white // doesn't work
}
}
【问题讨论】:
-
您找到解决方案了吗?我在搜索的所有地方都在答案中找到了相同的代码。它不适用于占位符 textColor,而是更改了 searchBar 文本颜色。
-
奇怪的是,仍然没有任何解决方案适合我。除了文本颜色(背景、阴影等)之外,每个属性都可以设置
标签: ios swift uisearchbar ios13 swift5