2017-06-19 14 views
0

私はピッカービューを持っています。私はピッカービューのStringをキャプチャすることができますが、実際には私はちょうどindexが欲しいです。私は多分selectedRow(InComponent: Int)が働くだろうと思ったが、私はこれをしようとすると、私は言ってクラッシュを取得し、私はUIPickerViewインデックスをIntとして

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, InComponent component: Int) {  
    timeFrame = fixedAmountPickerView.selectedRow(inComponent: row) 
} 
をしようとしていますどのような範囲外の

インデックス2 [0 .. 0]

これは、

IndexIntとするにはどうすればよいですか?

+0

「pickerView.selectedRow(inComponent:row)」としてみてください –

+1

wouldn ' 'pickerView(:didSelectRow:component'?)の' row'パラメータを使用しますか? – AgRizzo

答えて

1

rowの値を格納しますが、さまざまな方法でインデックスを取得することができます:rowパラメータは、選択した行

  • あるごdidSelectRow

    1. をyou're場合はfixedAmountPickerView.selectedRow(inComponent: 0)を入力することができますoutside of the didSelectRow
  • 0

    pickerView.selectedRow(inComponent:)には、コンポーネント(通常は1)が必要です。コンポーネント番号の代わりにrowを渡すと、行番号がpickerViewのコンポーネントの数よりも多い場合はエラーが発生します。 componentsは、tableviewのsectionsと同じで、rowsrowsと同じです。あなたが欲しいのは、@AgRizzoが提案したものです。ただ、

    func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, InComponent component: Int) { 
    
        //row will have your index number 
    
    } 
    
    関連する問題