簡體   English   中英

UIPickerView 在沒有數據源的情況下獲取選定的值

[英]UIPickerView get selected value without datasource

在沒有數據源的情況下從 PickerView 獲取價值的最佳方法是什么? 所以我不能從一個數組中讀取值。

當前值只是行號,我需要在用戶完成挑選后讀取。

func numberOfComponents(in pickerView: UIPickerView) -> Int {
    return 3
}

func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    if component == 0 {
        return 300
    } else {
        return 10
    }
}

func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
    if component == 0 {
        return "\(row)."
    } else {
        return "\(row)"
    }
}

在此處輸入圖像描述

您可以使用pickerView.selectedRow(inComponent:)

let firstValue = pickerView.selectedRow(inComponent: 0)
let secondValue = pickerView.selectedRow(inComponent: 1)

兩者都只是一個Int值,表示其各自組件中當前選定的行索引。 由於您的值從 0 開始,您可以直接使用這些值。

你只需添加這個函數:

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
    print(row)
}

請注意該行從 0 開始

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM