DatePicker с пустой опцией в iOS - PullRequest
0 голосов
/ 11 сентября 2018

Я хочу использовать средство выбора даты с пустым параметром. Например, если пользователь не хочет выбирать день, месяц или год, будет опция «-» (пусто).

Вот изображение для лучшего понимания

Here is an image for better understanding

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Вы не можете изменить значения UIDatePicker.Если вы хотите, чтобы пользовательские значения отображались в строках, вы можете использовать UIPickerView.Пример кода для отображения месяцев вместе с «-»:

let months: [String] = ["-" ,"January", "February", "March",
                        "April", "May", "June",
                        "July", "August", "September",
                        "October", "November", "December"]

let pickerView: UIPickerView = UIPickerView()

pickerView.delegate = self
pickerView.dataSource = self

func numberOfComponents(in pickerView: UIPickerView) -> Int {
        return 1
}

func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return months.count
}

func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        return months[row]
}

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
// do whatever you want when specific row is selected
}
0 голосов
/ 11 сентября 2018

Для такого способа вам нужно использовать не DATE PICKER VIEW , для этого способа вы можете использовать Picker View и ручную настройку даты.

Пример:

var monthsArray = ["-", "May", "June", "...", "December"]
var yearsArray = ["-", "2018", "2017", "2016", "...."]
var daysArray = ["1", "2", "-", "3", "4"]
...