好长时间没有写文章了,感觉自己都迷失了自我。从今天开始,脚踏实地的积累自己学习的经验。希望能对初学者有帮助。
摘要 :UIPickerView是一个选择器控件,它比UIDatePicker更加通用,它可以生成单列的选择器,也可生成多列的选择器,而且开发者完全可以自定义选择项的外观,因此用法非常灵活。UIPickerView直接继承了UIView,没有继承UIControl,因此,它不能像UIControl那样绑定事件处理方法,UIPickerView的事件处理由其委托对象完成。使用UIPickerView的对象应该遵守UIPickerViewDataSource,UIPickerViewDelega.
一 、
属性:
numberOfComponents:获取UIPickerView指定列中包含的列表项的数量。该属性是一个只读属性。
showsSelectionIndicator:该属性控制是否显示UIPickerView中的选中标记(以高亮背景作为选中标记)。
方法:
- (NSInteger)numberOfRowsInComponent:(NSInteger)component; 获取UIPickerView包含的列数量。
- (CGSize)rowSizeForComponent:(NSInteger)component; 获取UIPickerView包含的指定列中列表项的大小。该方法返回一个CGSize对象。
- (void)selectRow:(NSInteger)row inComponent:(NSInteger)componentanimated:(BOOL)animated;该方法设置选中该UIPickerView中指定列的特定列表项。最后一个参数控制是否使用动画。
- (NSInteger)selectedRowInComponent:(NSInteger)component;该方法返回该UIPickerView指定列中被选中的列表项。
- (UIView *)viewForRow:(NSInteger)rowforComponent:(NSInteger)component; 该方法返回该UIPickerView指定列的列表项所使用的UIView控件。
- (void)reloadAllComponents;刷新所有列的数据
- (void)reloadComponent:(NSInteger)component;刷新某一列的数据
二、UIPickerViewDataSource
UIPickerViewDelegate
如果程序需要控制UIPickerView中各列的宽度,以及各列中列表项的大小和外观,或程序需要为UIPickerView的选中事件提供响应,都需要为UIPickerView设置UIPickerViewDelegate委托对象,并根据需要实现该委托对象中的如下方法。