Выбор даты показывает диапазон лет - PullRequest
0 голосов
/ 20 февраля 2020

Когда я выбираю свой сборщик, я хочу показывать только годы с 1900 по 2150 год. Что не так в моем коде или чего не хватает?

@objc func dateChanged(datePicker: UIDatePicker,field: HoshiTextField){
    let dateFormatter =  DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    let min = dateFormatter.date(from: "01-01-1900")
    let max = dateFormatter.date(from: "01-01-2150")
    datePicker.minimumDate = min
    datePicker.maximumDate = max
    if  self.fechaTxt.isFirstResponder{
        self.fechaTxt.text = dateFormatter.string(from: datePicker.date)
    }
    self.view!.endEditing(true)
}

1 Ответ

0 голосов
/ 20 февраля 2020

При настройке минимальной и максимальной даты UIDatePicker другие даты все равно будут видны, их просто нельзя будет выбрать. Поэтому, если вы попытаетесь прокрутить до 1800 года, ваш сборщик отскочит до минимального значения 1900.

Если вы не хотите показывать дату за пределами вашего временного диапазона, я боюсь, что вы необходимо создать его самостоятельно, используя UIPickerView, и заполнить его любым количеством компонентов, которые вы хотите.

Или, поскольку это, вероятно, распространенная проблема, я предполагаю, что несколько других людей создали pod или spm только для этого случай, поэтому проверьте inte rnet для альтернатив, если вы не хотите заново изобретать это колесо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...