9

我知道 UIPickerView 有这个方法:

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

但是在这个方法中,我想获取其他组件的选定行。我到底怎么能做到这一点?

4

2 回答 2

27

您可以使用selectedRowInComponent的方法在任何地方获取选定的行号UIPickerView

像这样

NSString *YourselectedTitle = [self.yourArrayName objectAtIndex:[self.yourPickerName selectedRowInComponent:0]];
NSLog(@"%@", YourselectedTitle);
于 2013-09-03T15:33:03.543 回答
5

老问题,但如果像我这样的人正在使用 Swift 2.0 现在答案是

let row = self.myPicker.selectedRowInComponent(0)
let value = myArray[row]

我将 0 写入组件值,因为我的选择器只有一个组件,但它可能有多个组件,例如带有日期和时间的 datepicker

如果您保留pickerview的出口,您甚至可以在您正在谈论的功能之外使用此方法

于 2016-03-10T16:39:26.017 回答