UIPickerView 和 UIDataPicker的理解

原创 2015年11月21日 17:47:33

一.UIPickerView
1.UIPickerView的常见属性

// 数据源(用来告诉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)

//  一共有多少列
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
//  第component列一共有多少行
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;

4.代理方法(UIPickerViewDelegate)
//  第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.常见属性

// datePicker的显示模式
@property (nonatomic) UIDatePickerMode datePickerMode;
// 显示的区域语言
@property (nonatomic, retain) NSLocale   *locale;

2.监听UIDatePicker的选择
* 因为UIDatePicker继承自UIControl,所以通过addTarget:…监听

IOS UIPickerView+UITextField_ToolBar

参考资料:http://www.runoob.com/ios/att-ios-ui-picker.html lz是Ios新手,在草鸟教程学习ios控件使用,但是又有菜鸟教程的代码不给了,部分代码缺失...
  • u011740841
  • u011740841
  • 2016年08月22日 18:10
  • 373

UIAlertController + UIPickerView完美结合

参照例子:http://www.oschina.net/code/snippet_2450779_53800。。 要将UIPickerView显示在UIAlertController上,需要在tit...
  • zhuzhiyongai
  • zhuzhiyongai
  • 2016年08月05日 09:56
  • 470

自定义UIPickerView修改显示样式

自定义UIPickerView修改显示样式
  • wuyulunbi12580
  • wuyulunbi12580
  • 2016年09月23日 00:11
  • 1307

更改UIPickerView选中框颜色

[pickerView.subviews objectAtIndex:1].layer.borderWidth = 0.5f;         [pickerView.subviews obj...
  • linhanmin
  • linhanmin
  • 2015年10月12日 11:03
  • 4162

iOS7 UIPickerView 背景色设置

只调用一次即可 [[UIPickerView appearance] setBackgroundColor:[UIColor whiteColor]];
  • xyxjn
  • xyxjn
  • 2014年09月16日 17:55
  • 4494

修改UIPickView的高度

发现了一个问题,UIPickerView不能改变小于216的高度,利用setframe方法无法修改UIPickerView的高度。 解决方法:    1、加上pickerView.autoresi...
  • u013087068
  • u013087068
  • 2015年01月16日 08:30
  • 1364

使用UIPickerView需要注意的问题时候

一般是在 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSIntege...
  • StudyRecord
  • StudyRecord
  • 2012年05月21日 10:31
  • 2283

UIPickerView控件中自定义显示的字体大小及样式

//重写方法 - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(...
  • u013355871
  • u013355871
  • 2016年03月15日 16:52
  • 5284

如何修改UIPickerView选中行背景颜色

最近有需求要求选择器,选中行背景颜色为蓝色,同时选中行字体颜色为白色。 如下图:当时用的是系统原生UIPickerView实现的。但是UIPickerView并没有提供可以设置选中行背景颜色的接口。...
  • Setoge
  • Setoge
  • 2017年12月05日 18:14
  • 157

UIPickerView的使用和项目展示

今天呢开始给同学们讲解UIPickerView的使用,首先通过一个app中广泛存在的选菜的功能来体现UIPickerView的用法!废话不多说首先看效果图! // //  ZZPicke...
  • ZZ_IOSdeveloper
  • ZZ_IOSdeveloper
  • 2016年12月19日 18:50
  • 371
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UIPickerView 和 UIDataPicker的理解
举报原因:
原因补充:

(最多只允许输入30个字)