検索バーのテキストフィールドの背景色をカスタム色に設定しようとしています。私は無駄にここで答えを見て:UITextField UISearchBarの背景色iOS 10+
Cannot change search bar background color
は、検索バーが赤色のテキストフィールドを持っているかを参照してください?私はコードを守り、UISearchBarTextFieldオブジェクトが見つかったことを確認して、その背景色をUIColor.redに設定していますが、色は変わりません。
私はスーパービューのすべての背景色を助けてくれると期待していましたが、色を変えることができません。たぶん、いくつかの新しいトリックがあるか、誰かが何とか色を上書きするかもしれない何かに光を当てることができます。
extension UISearchBar {
var textField: UITextField? {
return subviews.first?.subviews.first(where: { $0.isKind(of: UITextField.self) }) as? UITextField
}
}
searchBar.textField?.backgroundColor = UIColor.red // <-- Not working
let textFieldInsideUISearchBarLabel = searchBar.textField?.value(forKey: "placeholderLabel") as? UILabel
textFieldInsideUISearchBarLabel?.textColor = UIColor.lightGray
私はそれをしたいようにUITextFieldオブジェクト内のテキストだけではないのUITextFieldの背景色、ライトグレーに変更されることに注意してください。