【问题标题】:More than 1 UIPickerView Swift超过 1 个 UIPickerView Swift
【发布时间】:2015-01-08 03:56:25
【问题描述】:

我试图用 2 个 UIPickerViews 制作一个简单的应用程序,当我放入第二个时,它只包含与第一个相同的数据。我已经声明了将数据插入第一个函数的函数:

var typesOfData = ["KB","MB","GB"]
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
    return 1
}

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    return typesOfData.count
}

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
    return typesOfData[row]
}

但我需要知道如何为第二个 UIPickerView 声明这些函数。

【问题讨论】:

    标签: ios swift uipickerview


    【解决方案1】:

    您可以使用相同的委托方法来填充两个UIPickerViews。只需根据您正在处理的UIPickerView 有条件地填充它们。例如,如果您的第一个UIPickerView 称为firstPickerView,而您的第二个UIPickerViewsecondDataSet 填充:

    var typesOfData = ["KB","MB","GB"]
    var secondDataSet = ["A","B","C"]
    func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
        return 1
    }
    
    func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        if pickerView == firstPickerView {
            return typesOfData.count
        } else { // if it's the second picker view
            return secondDataSet.count
        }
    }
    
    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
        if pickerView == firstPickerView {
            return typesOfData[row]
        } else {
            return secondDataSet[row]
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2019-01-27
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 2019-02-15
      • 1970-01-01
      • 1970-01-01
      • 2017-10-30
      • 1970-01-01
      相关资源
      最近更新 更多