一.UIPickerViewatom
1.UIPickerView的常見屬性spa
// 數據源(用來告訴UIPickerView有多少列多少行) @property(nonatomic,assign) id<UIPickerViewDataSource> dataSource; // 代理(用來告訴UIPickerView每1列的每1行顯示什麼內容,監聽UIPickerView的選擇) @property(nonatomic,assign) id<UIPickerViewDelegate> delegate; // 是否要顯示選中的指示器 @property(nonatomic) BOOL showsSelectionIndicator; // 一共有多少列 @property(nonatomic,readonly) NSInteger numberOfComponents;
2.UIPickerView的常見方法代理
// 從新刷新全部列 - (void)reloadAllComponents; // 從新刷新第component列 - (void)reloadComponent:(NSInteger)component; // 主動選中第component列的第row行 - (void)selectRow:(NSInteger)row inComponent:(NSInteger)component animated:(BOOL)animated; // 得到第component列的當前選中的行號 - (NSInteger)selectedRowInComponent:(NSInteger)component;
3.數據源方法(UIPickerViewDataSource)code
// 一共有多少列 - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; // 第component列一共有多少行 - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
4.代理方法(UIPickerViewDelegate)component
// 第component列的寬度是多少 - (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component; // 第component列的行高是多少 - (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component; // 第component列第row行顯示什麼文字 - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component; // 第component列第row行顯示怎樣的view(內容) - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view; // 選中了pickerView的第component列第row行 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;
二.UIDatePicker繼承
1.常見屬性get
// datePicker的顯示模式 @property (nonatomic) UIDatePickerMode datePickerMode; // 顯示的區域語言 @property (nonatomic, retain) NSLocale *locale;
2.監聽UIDatePicker的選擇it
由於UIDatePicker繼承自UIControl,因此經過addTarget:...監聽io