UIPicker与动态内容Swift

时间:2018-02-16 18:36:19

标签: ios swift uipickerview

我有一个带按钮的表格视图。表格视图还包含如下数量的数字:

Class      Price      Qty     Action
Regular    $5         10       Buy

点击购买操作后,我想显示一个带有1-10的数字的uipickerview作为选择器的内容,以便用户可以选择他们想要购买的门票数量。我的问题是,使用普通的UIPicker,我必须符合委托并设置数据源,但数据源依赖于单击的表视图。知道怎么解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您将创建一个根据单击按钮更改其内容然后重新加载选择器的数组,选择器的数据源可以更改而不是您想象的静态,因此请实现这些方法并更改contentsArr每个按钮单击您要显示数据。

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

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

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

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

    }