0

因此,当我尝试在一个视图控制器中使用多个 PickerViews 时,我遇到了这个奇怪的问题。我已经对其进行了设置,以便我使用 if / else if 来检查将正确数据放入哪个选择器。我总共有 3 个选择器,前两个工作正常,但第三个从不显示任何数据。以下是功能:

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

    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        if pickerView == sitePicker {
            return sitePickerData.count
        } else if pickerView == sizePicker {
            return sizePickerData.count
        } else if pickerView == profilePicker {
            return profilePickerData.count
        } else {
            return 0
        }
    }

    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        if pickerView == sitePicker {
            return "\(sitePickerData[row])"
        } else if pickerView == sizePicker {
            return "\(sizePickerData[row])"
        } else if pickerView == profilePicker  {
            return "\(profilePickerData[row])"
        }
        return ""
    }
}

sitePickerData、sizePickerData 等是字符串数组,其中包含在选择器上滚动的选项。再一次,前两个工作正常,但第三个选择器没有显示数组中的任何数据。任何帮助表示赞赏,谢谢!

4

0 回答 0