Xcode 11.3 UIDatePicker在黑暗模式下未显示在iPad上

时间:2020-01-09 14:59:24

标签: swift ipad xcode11

我在几个项目中都有一个标准的UIDatePicker。该选择器在iPhone上以及在光照模式下的iPad上都可以正常工作。当iPad处于黑暗模式时,不会显示整个选择器(背景和文本)。更改背景和前景色无效。这可能是Apple的错误,但我希望有人能够解决。我已经viewed this question,但答案还不够好-基本上仅使用灯光模式。

供参考,选择器代码为:

@IBOutlet var datePicker: UIDatePicker? = UIDatePicker()
//or @IBOutlet weak var datePicker: UIDatePicker!

override func viewDidLoad() {
    super.viewDidLoad()
    let defaults: UserDefaults = UserDefaults.standard
           let tempDate = defaults.value(forKey: "selectedDate") as! Date?

           let calendar: NSCalendar = NSCalendar(calendarIdentifier:  .gregorian)!
           calendar.timeZone = NSTimeZone(name: "UTC")! as TimeZone

           let components = calendar.components([.year, .month, .day], from: tempDate! as Date)

           defaultDate = calendar.date(from: components as DateComponents)!  as Date?
           self.datePicker?.date = defaultDate as Date

}

/*


override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(true)
    print(#function)

    let defaults: UserDefaults = UserDefaults.standard
    let tempDate = defaults.value(forKey: "selectedDate") as! Date?

    let calendar: NSCalendar = NSCalendar(calendarIdentifier:  .gregorian)!
    calendar.timeZone = NSTimeZone(name: "UTC")! as TimeZone

    let components = calendar.components([.year, .month, .day], from: tempDate! as Date)

    defaultDate = calendar.date(from: components as DateComponents)!  as Date?
    self.datePicker?.date = defaultDate as Date

    }
*/   


@IBAction func datePickerAction(sender: AnyObject) {

    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "EE. MMMM dd, yyyy"
    dateFormatter.timeZone = NSTimeZone.default
    dateString = dateFormatter.string(from: datePicker!.date)
    selectedDate = datePicker?.date
    selectedDateLabel.text = dateString
    print(#function, "selected date: ", selectedDate!)

}

0 个答案:

没有答案