Настройте фон и цвет текста в UIDatePicker в iOS 12 - PullRequest
0 голосов
/ 25 октября 2018

В предыдущих версиях iOS мне удавалось изменять цвета текста и фона, используя что-то вроде следующего:

let datePicker = UIDatePicker()
datePicker.datePickerMode = UIDatePickerMode.date
datePicker.setValue(UIColor.white, forKey: "textColor")
datePicker.backgroundColor = UIColor.black.withAlphaComponent(0.6)

Это больше не работает в Xcode 10 / iOS 12. Выбор датыотображается с цветами по умолчанию.Кто-нибудь нашел решение для настройки цвета текста и фона в iOS 12?

1 Ответ

0 голосов
/ 25 октября 2018

Кажется, что-то сбрасывает эти значения между тем, когда я их устанавливаю, и когда отображается вид.Я смог решить эту проблему, создав подкласс UIDatePicker и установив значения в layoutSubviews().Возможно, есть более удобное место для установки цветов, но сейчас это работает для меня.

class DatePicker: UIDatePicker {
    override func layoutSubviews() {
        super.layoutSubviews()

        backgroundColor = UIColor.black.withAlphaComponent(0.6)
        setValue(false, forKey: "highlightsToday")
        setValue(UIColor.white, forKey: "textColor")
    }
}
...