UIPickerView简介

原创 2014年12月05日 09:40:00

UIPickerView是选择器类,类似于老虎机或者轮盘来表示一个或多个值的集合。用户可以滑动,来选择所需的值。


获取视图选择器的尺寸:

1.返回UIPickerView当前的列数:

@property(nonatomic, readonly) NSInteger numberOfComponents

2.返回指定列的行数:

- (NSInteger)numberOfRowsInComponent:(NSInteger)component

3.返回每一行的尺寸:

- (CGSize)rowSizeForComponent:(NSInteger)component


加载视图选择器:

4.重新载入该选择器视图的所有组件:

- (void)reloadAllComponents

5.重新加载某一列的组件:

- (void)reloadComponent:(NSInteger)component

行选择:

6.选择指定列的指定行:

- (void)selectRow:(NSInteger)row
      inComponent:(NSInteger)component
         animated:(BOOL)animated

7.第几列被选中的行号:

- (NSInteger)selectedRowInComponent:(NSInteger)component


返回行和列的视图:

8.返回指定行和列的视图:

- (UIView *)viewForRow:(NSInteger)row
          forComponent:(NSInteger)component


指定代理:

@property(nonatomic, assign) id< UIPickerViewDelegate > delegate


指定数据源:

@property(nonatomic, assign) id< UIPickerViewDataSource > dataSource


外观管理:

显示选中框:

@property(nonatomic) BOOL showsSelectionIndicator


选择器要显示数据,需要依赖两个协议:UIPickerViewDelegate和UIPickerViewDataSource。

UIPickerViewDelegate:

设置选择器视图的尺寸:

1.设置行高:

- (CGFloat)pickerView:(UIPickerView *)pickerView
rowHeightForComponent:(NSInteger)component

2.设置行宽:

- (CGFloat)pickerView:(UIPickerView *)pickerView
    widthForComponent:(NSInteger)component

设置每行的内容:

3.返回当前行的内容,此处是将内容添加到滚动的那个显示栏上:

- (NSString *)pickerView:(UIPickerView *)pickerView
             titleForRow:(NSInteger)row
            forComponent:(NSInteger)component
例如:

-(NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component  
{  
    return [pickerData objectAtIndex:row];  
}  

4.

- (NSAttributedString *)pickerView:(UIPickerView *)pickerView
             attributedTitleForRow:(NSInteger)row
                      forComponent:(NSInteger)component

5.当picker view需要给指定的component.row指定view时,调用此函数.返回值为用作row内容的view:

- (UIView *)pickerView:(UIPickerView *)pickerView
            viewForRow:(NSInteger)row
          forComponent:(NSInteger)component
           reusingView:(UIView *)view


选择响应行:

6.当用户选择某个row时,picker view调用此函数:

- (void)pickerView:(UIPickerView *)pickerView
      didSelectRow:(NSInteger)row
       inComponent:(NSInteger)component


UIPickerViewDataSource:

为选择器提供计数:

1.返回应该有几列:

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView

2.返回当前列显示的行数:

- (NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liangliang2727/article/details/41743579

UIPickerView DEMO

  • 2011年10月31日 18:15
  • 20KB
  • 下载

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

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

iOS开发中的UIPickerView

UIPickerView的常见属性、数据源方法、代理方法、宽度与高度的设置、创建UIDatePicker...
  • whjForWork
  • whjForWork
  • 2015-03-30 02:12:40
  • 1071

UIPickerView做好的时间选择

// // PickerView.m // text // // Created by Apple on 2017/4/21. // Copyright © 2017年 Apple....
  • loveiosolovehua
  • loveiosolovehua
  • 2017-04-21 15:10:42
  • 522

ios 自定义弹出UIPickerView或UIDatePicker(动画效果)

前面iOS学习之UIPickerView控件的简单使用 用到的UIPickerView弹出来是通过 textField.inputView = selectPicker;   textField....
  • qilixiang012
  • qilixiang012
  • 2014-11-21 00:03:51
  • 892

修改UIPickView的高度

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

iOS10的UIPickerView分割线颜色,文字颜色

遵循代理,然后实现下面的代理方法即可:    pickerView.delegate = self;    pickerView.dataSource = self; ...
  • zhaotao0617
  • zhaotao0617
  • 2016-10-20 10:18:16
  • 7720

UIPickerView实现循环滚动

为了UIPickerView实现循环滚动,需要实现UIPickerView的代理以及数据源方法,实现pickerViewLoaded方法,并在didSelectRow方法中调用[self picker...
  • q3964637
  • q3964637
  • 2015-12-16 15:34:10
  • 4181

UIPickerView基本用法

UIPickerView基本用法
  • lvdezhou
  • lvdezhou
  • 2015-11-30 12:28:20
  • 2379

数据选择控件-UIPickerView的总结

数据选择控件就是帮助用户快速选择数据的控件。 UIPickerView——显示一组或多组数据方便用户选择。 作用 (1)从指定的数据源中选择数据; (2)通常以UI...
  • explore_zhang
  • explore_zhang
  • 2016-05-02 22:30:24
  • 4824
收藏助手
不良信息举报
您举报文章:UIPickerView简介
举报原因:
原因补充:

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