【发布时间】:2019-02-15 06:10:12
【问题描述】:
我觉得我很接近了,因为下面的代码适用于静态 UIPickerViews,但我正在尝试根据第一个选择动态设置我的pickerview,尽管查看了教程和搜索,但我无法完全解决这个问题。例如,如果您在 myPickerData 中选择“Brown”,则 myPickerData2 中应仅显示“Undergraduate”,或者如果您选择“Dartmouth”,则应仅获得“Undergraduate”和“MBA”,如果选择“Columbia”或“Harvard”则最后,你得到“本科”、“JD”、“MBA”。
var myPickerData = ["Select Your Dream College", “Brown", "Columbia", “Dartmouth”, "Harvard" ]
var myPickerData2 = ["Undergraduate", "JD", "MBA"]
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 2
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
if component == 0 {
return myPickerData.count
}
return myPickerData2.count
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
if component == 0 {
return myPickerData[row] as String
}
return myPickerData2[row] as String
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
uniSelected = myPickerData[pickerView.selectedRow(inComponent: 0)]
collegeSelected = myPickerData2[pickerView.selectedRow(inComponent: 1)]
}
【问题讨论】:
标签: swift dynamic components uipickerview