代理方法
<UIPickerViewDataSource,UIPickerViewDelegate>
初始化
self.selectPicker.delegate = self;
self.selectPicker.dataSource = self;
self.selectPicker.frame = CGRectMake(0, 480, 320, 216) ;
代理方法
显示pickerview的components的个数
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
return 1;
}
显示每个components的rows
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
return [pickerArray count];
}
//显示每一行的title
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
return [pickerArray objectAtIndex:row];
}
1 UIPickerView
选择器
// 设置picker的数据源和代理,目的是将来为了调用协议方法
picker.dataSource = self;
picker.delegate = self;
// 设置显示中间的那两条线(选择指示器)
picker.showsSelectionIndicator = YES;
#pragma mark 标记
2 协议方法分为两种 必须实现的协议方法 @required
可选择的协议方法 @optional
3 // 获取两列中已经选择的行号
_firstRow = [pickerView selectedRowInComponent:0];
_secondRow = [pickerView selectedRowInComponent:1];
// 指定显示某列某行
[_picker selectRow:1 inComponent:0 animated:YES];
[_picker selectRow:1 inComponent:1 animated:YES];
重新加载(刷新) 所有 的 列
reloadAllComponents 会重新的调用pickerView的所有的与pickerView构建和显示相关的协议方法。
[_picker reloadAllComponents];
指定刷新某列
[_picker reloadComponent:0];