自定义“可搜索”搜索字段SwiftUI iOS 15

qfe3c7zg  于 2022-10-31  发布在  Swift
关注(0)|答案(3)|浏览(190)

当在iOS 15的SwiftUI中使用新的.searchable()修改器时,我无法自定义搜索栏的外观。具体来说,我希望它能与我的导航栏颜色搭配得很好。

我试着像这样修改.appearance()

UISearchBar.appearance().backgroundColor = UIColor.white
UISearchBar.appearance().tintColor = UIColor.white
UISearchBar.appearance().barTintColor = UIColor.white

却只设法得到了这个。

即使这种成功,间距看起来也不好。我宁愿把它染成白色。

aamkag61

aamkag611#

我通过使用这两条全局外观线解决了这个问题。

UITextField.appearance(whenContainedInInstancesOf: [UISearchBar.self]).backgroundColor = .white
UITextField.appearance(whenContainedInInstancesOf: [UISearchBar.self]).tintColor = .black

ut6juiuv

ut6juiuv2#

.searchable之后设置.font.foregroundColor修饰符可以达到预期的效果,但在编写本文时(iOS 16),它仍然不能与.background修饰符一起使用。

izkcnapc

izkcnapc3#

输入字段的textColor可以通过修改应用了.searchable修饰符的视图的.preferredColorScheme()来从黑色更改为白色。设置.preferredColorScheme(.dark)会将颜色设置为白色。

相关问题