UIPickerView控件学习总结

来源:互联网 发布:注册表清理软件 编辑:程序博客网 时间:2024/04/30 23:47

UIPickerView知识点总结

1 UIPickerView主要掌握其数据源跟代理方法。即实现它们的协议UIPickerViewDataSource,UIPickerViewDelegate

#pragma mark -PickerView的数据源方法//告诉PickerView中有多少组,即有多少个滚轮。- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;//告诉PickerView中"对应的组"中的有多少行。- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;- #pragma mark -PickerView的代理方法//告诉PickerView中每一组每一行显示文字。-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;//当手指滑动PickerView时,PickerView会告诉我们 现在选择的是 第几组(component)第几行(row)。-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;-#pragma mark 通常用于自定义pickerView的cellView//参数:(UIView *)view代表的是 如果有可循环使用的View的话,会返回该View,若没有则返回为空。另外,该循环引用在iOS6中是没有问题的,但是在iOS7中则有bug(苹果官方承认的,但是不知道是否已经有修正)。-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;-#pragma mark 设置pickerView里每一个view的高度-(CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component;#pragma mark 设置pickerView里每一个view的宽度-(CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;

2 UIPickerView其他的一些常用的方法

//获取选中行的行号int row = [self.pickerView selectedRowInComponent:i];
//通过"代码"的形式 设置(选中) 某一组某一行[self.pickerView selectRow:randomRow inComponent:i animated:YES];
//刷新第i组的数据[self.pickerView reloadComponent:i];
0 0