大家好日子,
我尝试在主题行中解释我的查询。 据我所知,从我在代码中看到的内容,所有的pickerviews都在ViewDidLoad()中初始化,这意味着所有的都有自己的数据集。 作为我的数据验证的一部分,在这种情况下非常重要,我想根据之前的选择设置以下的选择器视图。
我遇到的问题是使用“新”数据填充以下pickerview的标题并重新加载视图。
理想情况下,我希望视图显示为先前的选择。
如果您在逻辑上知道如何做到这一点请告诉我,我将非常感谢您现在可以获得的任何帮助!
答案 0 :(得分:0)
我从逻辑上确定你的意思并不确定,但你只需使用if语句和开关来确定选择的内容以及根据该选择呈现的内容。然后重新加载数据。
func pickerView(pickerView: UIPickerView,
didSelectRow row: Int,
inComponent component: Int)
{
if component == 0
{
switch row{
case 0:
self.titlesForComponentOne = ["One","Two","Three","Four"]
case 1:
self.titlesForComponentOne = ["One","Two"]
default:
self.titlesForComponentOne = ["One","Three","Four"]
}
}else if component == 1
{
switch row{
case 0:
self.titlesForComponentTwo = ["Three", "Four"]
case 1:
….
self.picker.reloadAllComponents() // or just ones that need to be updated
}
func pickerView( pickerView: UIPickerView,
numberOfRowsInComponent component: Int) -> Int
{
switch component{
case 0:
return self.titlesForComponentZero.count
case 1:
return self.titlesForComponentOne.count
case 2:
….
}