保持UIPickerViewDelegate方法被触发几秒钟

时间:2016-05-11 20:06:13

标签: ios objective-c uipickerview

在调用它之前,我必须在基本API的末尾附加一个城市的名称。我选择UIPickerView来选择所需的城市,但是当滚动所需城市的行时,滚动暂停(正如您在滚动长列表时所期望的那样)会触发以下UIPickerViewDelegate方法:

- (void)pickerView:(UIPickerView *)pickerView
      didSelectRow:(NSInteger)row
       inComponent:(NSInteger)component

到目前为止,它使api呼叫错误的城市。有没有其他方法/方法来获得滚动选择?

1 个答案:

答案 0 :(得分:0)

UIPickerViewDelegate调用没有其他方法可以为您提供所选行。但是,有其他方法可以实现您正在寻找的效果。

您可以做的最简单的事情就是添加UIToolbar,将其直接放在UIPicker上方,然后添加一个按钮,显示"选择" (或者你认为合适的任何词)。当用户完成他们的滚动并且实际上在所需的城市上时,他们可以按下按钮。此时,您可以访问UIPicker所使用的索引:

- (NSInteger)selectedRowInComponent:(NSInteger)component

然后您可以执行您的API请求,它将使用正确的城市!