我可以以编程方式滚动到UIPickerView中的所需行吗?

pra*_*epa 36 objective-c uipickerview ios swift

默认情况下,初始化UIPickerView后会突出显示第一行.如何突出显示特定行或以编程方式滚动到特定行?

war*_*enm 64

与往常一样,这是完整记录.Apple文档UIPickerView应告诉您可能需要的方法– selectRow:inComponent:animated:.

  • 如果有人在Xamarin.iOS(MonoTouch)中找不到它,那就像你想的那样叫做Select()`而不是`SelectRow()`. (6认同)

Tho*_*mon 35

如果你想触发委托的方法pickerView:didSelectRow:inComponent,你应该手动调用它:

OBJ-C

[self.myPickerView selectRow:0 inComponent:0 animated:NO];
[self pickerView:self.myPickerView didSelectRow:4 inComponent:0];
Run Code Online (Sandbox Code Playgroud)

迅速

self.myPickerView.selectRow(0, inComponent: 0, animated: false)
self.pickerView(self.myPickerView, didSelectRow: 0, inComponent: 0)
Run Code Online (Sandbox Code Playgroud)

  • 只需要在 for call 委托之后手动添加 dispatch async ,否则非常适合 Swift 4.1 (2认同)

Ric*_*ich 33

是的,这很容易 [picker selectRow:row inComponent:component animated:NO];