Передача данных JSON в отдельные UIPickerviews - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть страница с контактами в моем приложении, которая имеет 4 разных региона. Под каждым регионом у меня есть выпадающий список, где я заполняю имена каждого контакта в UIPickerview. Все 4 выпадающих списка заполняют все имена из данных JSON. Что я хочу сделать, так это для каждого региона, который я хочу проверить, равен ли идентификатор идентификатору человека для этого региона, и затем отображать только эти имена. В настоящее время это код, который я использую. Как проверить конкретный идентификатор?

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

func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {


  if pickerView == thePicker {
        return contactUsInfo.count
  }
  else if pickerView == thePicker2 {
        return contactUsInfo.count
  }
  else if pickerView == thePicker3 {
        return contactUsInfo.count
  }
  else if pickerView == thePicker4 {
        return contactUsInfo.count
  }
    return 1
}

func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {

    if pickerView == thePicker {
        return contactUsInfo[row].fullName
    }
    else if pickerView == thePicker2 {
        return contactUsInfo[row].fullName
    }
    else if pickerView == thePicker3 {
        return contactUsInfo[row].fullName
    }
    else if pickerView == thePicker4 {
        return contactUsInfo[row].fullName
    }

    return ""
}

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {

    if (pickerView == thePicker)  {
        self.DropdownField.text = self.contactUsInfo[row].fullName

    }
    else if (pickerView == thePicker2)  {
        self.DropdownField2.text = self.contactUsInfo[row].fullName

    } else if (pickerView == thePicker3)  {
        self.DropdownField3.text = self.contactUsInfo[row].fullName

    } else if (pickerView == thePicker4)  {
        self.DropdownField4.text = self.contactUsInfo[row].fullName

    }
}

Мои мысли о том, как это сделать,

var id = contactUsInfo.id

if contactUsInfo.id == (id: 1, id: 2, id: 3, etc) {
pickerview == thePicker {
return contacUsInfo[row].fullName
}
} else if if contactUsInfo.id == (id: 4, id: 5, id: 6, etc) {
pickerview == thePicker2 {
return contacUsInfo[row].fullName
}
}

Я знаю, что этот код не верный, и на что я смотрю, отвечая.

...