如何在for循环中为文本字段实现UIPickerView?

时间:2016-03-10 05:22:47

标签: ios objective-c uitextfield uipickerview

我使用UIView循环基于JSON响应数据动态显示for中的文本字段。

我需要为for循环中的每个文本字段显示UIPickerView,但它仅适用于最后一个文本字段。我无法为每个文本字段显示UIPickerView。有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

所以你在i循环中使用i索引。我们在这里看到的是将UIPickerView指定为每个文本字段的输入视图。尝试这样的事情......

//FOR LOOP BEGINS

  //Iteration - Create a textfield.
  [self.view addSubview:yourTextfield];

  //Assign a uipickerview as textfield's input view.  
  UIPickerView *pickerView = [[UIPickerView alloc] init];
  pickerView.frame = CGRectMake(0,0,300,300);
  pickerView.tag = i;
  pickerView.delegate = self;
  pickerView.showsSelectionIndicator = YES;
  textField.inputView = pickerView;
  [self.view addSubview:pickerView];

  //Iteration ends

//FOR LOOP ENDS

P.S。您还可以使用 inputAccessoryView

将每个pickerView的工具栏添加到文本字段中

答案 1 :(得分:0)

您可以将行数设置为较大的数字,并使其从较高的值开始,用户很可能在很长一段时间内滚动滚轮 - 即便如此,更糟糕的是,他们将会触底。 你可以看到这个: How do you make an UIPickerView component wrap around?