有一个问题,无法使用didSelectRow方法来弄清楚如何使用UIPickerView中的数据。
问题是组件和行不是分开的,是否有机会使用分开的行和组件?
我正在尝试将label.text更改为数组中的某些数据,但是即使我更改一个pickerview,它也会在其他数组中更改。
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
resultLabel1.text = "\(pickerData![component][row]) \(timeNumber[row - 1]) \(timePickerData[row - 1])"
// print(component)
// print(unitsPickerView.selectedRow(inComponent: component))
// print(pickerData![component][row])
}
您可以在didSelectRow中使用if语句来检查当前正在使用的UIPickerView,然后采取相应的措施。类似于:
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
if pickerView == unitsPickerView {
// do stuff
} else {
// do some other stuff
}
}