IOS的UIPickerView 和UIDatePicker
1.UIPickerView的常见属性
1 //数据源(用来告诉UIPickerView有多少列多少行) 2 @property(nonatomic,assign) id<UIPikerViewDataSource> dataSource; 3 //代理(用来告诉UIPickerView每一列的每一行显示什么内容,监听UIPickerView的选择) 4 @property(nonatomic,assign) id<UIPickerViewDelegate> delegate; 5 //是否要显示选中的指示器 6 @property(nonatomic) BOOL showsSelectionIndicator; 7 //一共有多少列 8 @property(nonatomic,readonly) NSInteger numberOfComponents;
2.UIPickerView的常见方法
1 //重新刷新所有列 2 -(void)reloadAllComponents; 3 //重新刷新第component列 4 -(void)reloadComponent:(NSInteger)component; 5 //主动选中第component列的第row行 6 -(void)selectRow:(NSInteger)row inComponent:(NSInteger)component animated:(BOOL) animated; 7 //获取第component列的当前选中的行号 8 -(NSInteger)selectedRowIncomponent:(NSInteger) component;
3.数据源方法(UIPickerViewDataSource)
// 一共有多少列 - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; // 第component列一共有多少行 - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
4.代理方法(UIPickerViewDelegate)
1 // 第component列的宽度是多少 2 - (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component; 3 // 第component列的行高是多少 4 - (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component; 5 6 // 第component列第row行显示什么文字 7 - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component; 8 9 // 第component列第row行显示怎样的view(内容) 10 - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view; 11 12 // 选中了pickerView的第component列第row行 13 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;
UIDatePicker
1.常见属性
1 // datePicker的显示模式 2 @property (nonatomic) UIDatePickerMode datePickerMode; 3 // 显示的区域语言 4 @property (nonatomic, retain) NSLocale *locale;
2.监听UIDatePicker的选择
因为UIDatePicker继承自UIControl,所以通过addTarget:..监听