UIPickerView索引为Int

时间:2017-06-19 23:27:28

标签: ios swift uipickerview

我有一个选择器视图。我能够从选择器视图中捕获String,但实际上我只想要index。我想也许selectedRow(InComponent: Int)会起作用,但是当我尝试这个时,我会崩溃说

  

索引2超出界限[0 .. 0]

这就是我正在尝试的

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, InComponent component: Int) {    
    timeFrame = fixedAmountPickerView.selectedRow(inComponent: row) 
}

如何才能将Index作为Int

2 个答案:

答案 0 :(得分:1)

您可以通过不同方式获取索引:

  1. didSelectRow row参数是您选择的行
  2. 如果您在fixedAmountPickerView.selectedRow(inComponent: 0)
  3. 之外,则可以输入didSelectRow

答案 1 :(得分:0)

pickerView.selectedRow(inComponent:)需要组件(通常为1)。如果传递row而不是组件编号,如果行号大于pickerView中的组件数,则会出错。可以认为它是components与tableView中的sections相同,rowsrows相同。你想要的是@AgRizzo所建议的。只需将row的值存储在

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

    //row will have your index number

}