您可以在AppDelegate.m
中设置self.window
并覆盖界面样式,代码如下:
if (@available(iOS 13, *)) {
self.window.overrideUserInterfaceStyle = UIUserInterfaceStyleLight;
}
return YES;
Swift 5.*
->Swift 5.*
if #available(iOS 13.0, *) {
self.window?.overrideUserInterfaceStyle = .light
}
我找到了一种解决问题的方法。如果将“hightlightsToday”颜色标记为false,则所选文本会显示为您设置的代码颜色。
self.datePicker.setValue(false, forKey: "highlightsToday")
但是,如果我想使用不同的颜色突出显示所选日期的文本颜色;在这种情况下,我不确定需要更改哪个键值。因此,我将保持问题开放,以防有人知道如何在深色模式下更改所选日期的文本颜色。
您可以通过Info.plist文件解决此问题。 在Info.plist文件中添加“UIUserInterfaceStyle”键和“Light”值。
<key>UIUserInterfaceStyle</key>
<string>Light</string>
参考:https://github.com/xgfe/react-native-datepicker/issues/365#issuecomment-532875809
extension UIDatePicker {
var textColor: UIColor? {
set {
setValue(newValue, forKeyPath: "textColor")
}
get {
return value(forKeyPath: "textColor") as? UIColor
}
}
var highlightsToday : Bool? {
set {
setValue(newValue, forKeyPath: "highlightsToday")
}
get {
return value(forKey: "highlightsToday") as? Bool
}
}
}
完成上述步骤后,您可以像以下这样设置textColor的值:
let datePicker = UIDatePicker()
datePicker.textColor = UIColor.label
label
是一个颜色。 - rmaddy