Выберите значение по умолчанию DataPicker Swift 4 - PullRequest
0 голосов
/ 10 января 2019

У меня есть некоторые проблемы с DataPicker: как я могу выбрать необходимое значение в DatePicker. пример: уже выбрано «1 ПУНКТ», и нужно выбрать «2 ПУНКТА», нажав кнопку. Нужно выбрать пункт [index + 1], как я могу это сделать?

func numberOfItemsInPickerView(_ pickerView: AKPickerView) -> Int {

        switch pickerView {
        case yearPickerView:
            return defaultDataSample.years.count
        case monthPickerView:
            return defaultDataSample.months.count
        case quaterPickerView:
            return defaultDataSample.quaters.count
        default:
            return 0
        }
    }

    func pickerView(_ pickerView: AKPickerView, titleForItem item: Int) -> String {

        switch pickerView {
        case yearPickerView:
            return defaultDataSample.years[item]
        case monthPickerView:
            return defaultDataSample.months[item]
        case quaterPickerView:
            return defaultDataSample.quaters[item]
        default:
            return ""
        }

    }

    func pickerView(_ pickerView: AKPickerView, didSelectItem item: Int) {

        switch pickerView {
        case yearPickerView:
            finantialDataSample.currentYear = Int(defaultDataSample.years[item])

        case monthPickerView:
            finantialDataSample.period = defaultDataSample.months[item]

        case quaterPickerView:
            finantialDataSample.period = defaultDataSample.quaters[item]

        default:
            break
        }

1 Ответ

0 голосов
/ 10 января 2019

Просто установите переменную для запоминания последней выбранной строки и затем перейдите к следующей.

var currentRow = 0
func pickerView(_ pickerView: AKPickerView, didSelectItem item: Int) {
    switch pickerView {
         case yearPickerView:
            currentRow = item
         default:
            break
    }
}

func buttonaction() { //Button triggers this
      let nextRow = currentRow + 1
      pickerview.selectRow(nextRow, inComponent: 0, animated: true)
}

Дайте мне знать, если это не работает для вас.

Найл

...