代码编号:Picker1
代码功能:实现UIPickerViewDataSource协议
代码:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 5;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component
{
return [self.pickerArray count];
}
代码编号:Picker2
代码功能:实现UIPickerViewDelegate协议
代码:
// 返回高度和宽度 ,高度是指每一行的高度
- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component;
//在picker上显示目前选择component的row中的值,可以是NSString,也可以是UIView。具体的值可以在NSArray或NSDictionary中设置
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;
代码编号:Picker3
代码功能:控制picker选择值,一个老虎机的例子
代码:
BOOL win = NO;
int numInRow = 1;
int lastVal = -1;
for (int i = 0; i < 5; i++)
{
int newValue = random() % [self.column1 count];
if (newValue == lastVal)
numInRow++;
else
numInRow = 1;
lastVal = newValue;
[picker selectRow:newValue inComponent:i animated:YES];
[picker reloadComponent:i];
if (numInRow >= 1)
win = YES;
}