如何获取UIPickerView
中每个组件的行号?
我有UIPickerView
Whit 3组件:
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
第二个问题是我如何改变每个组件的宽度?
答案 0 :(得分:2)
您可能正在从数组中填充UIPickerView;在
的调用中使用row
参数
[dataArray objectAtIndex:row];
获取数据。如果您需要知道总行数,只需使用[dataArray count];
来获取数据源的大小。
编辑:我忘记了如果您遵循协议,您将实施此方法:
-(NSInteger) pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
NSInteger numRows = 0;
switch (component) {
case 0:
numRows = 6;
break;
case 1:
numRows = 3;
break;
case 2:
numRows = 2;
break;
default:
break;
}
return numRows;
}
因此,您实际上是在告诉系统每个组件有多少行。检查一下,或者继续实施它,你就会得到答案!
编辑2:如果要获取每个组件中当前选定的行,请使用:
[yourPickerView selectedRowInComponent:1];
根据您的需要多次。我建议循环遍历所有组件并使用此方法获取所选行。