我有UIPickerView
有两个组件,当我更改component[0] the data of the
组件[1]`时会重新加载。
现在我尝试使用didSelectRow
在一个字符串中获取两个组件的值,但是,我无法得到我想要的结果。
public func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
if component == 0 {
String0 = arr0[row]
pickerView.reloadComponent(1)
}
if component == 1{
String1 = arr1[row]
}
print("\(String0), \(String1)")
// result: " , string1.value"
}
当我选择component[0]
时,结果会发生变化但仅适用于String0
我想要实现的是获得"string0.value, string1.value"
答案 0 :(得分:2)
您可以使用方法selectedRowInComponent
来获取每个组件中的选定行,所选行将是您构成字符串的正确索引。
<强>尝试:强>
public func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
if component == 0 {
pickerView.reloadComponent(1)
}
String0 = arr0[pickerView.selectedRowInComponent(0)]
String1 = arr1[pickerView.selectedRowInComponent(1)]
print("\(String0), \(String1)")
// result: " , string1.value"
}