UIPikerView的属性
UIPikerView的属性
1. numberOfComponents:返回UIPickerView当前的列数
NSInteger num = _pickerView.numberOfComponents;
NSLog( @"%d", num);
2. - (NSInteger)numberOfRowsInComponent:(NSInteger)component; 返回component列中有多少行。
NSInteger numInCp = [_pickerView numberOfRowsInComponent:0];
NSLog(@"%d",numInCp);
3. - (CGSize)rowSizeForComponent:(NSInteger)component; 返回component中一行的尺寸。
CGSize size = [_pickerView rowSizeForComponent:0];
NSLog(@"%@", NSStringFromCGSize(size));
2. delegate:
2.0 设置UIPickerView代理
_pickerView.delegate = self;
// 设置UIPickView每行显示的内容
2.1 - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return @"showData";
}
2.2 - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;
// 返回一个视图,用来设置pickerView的每行显示的内容。
-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
UIView *myView=[[UIView alloc]init];
myView.backgroundColor = [UIColor redColor];
return myView;
}
效果:
3. dataSource:数据源
#pragma mark - dataSource method
// 设置每列显示3行
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return 3;
}
// 设置显示2列
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 2;
}
4. showsSelectionIndicator:是否显示指示器,默认为NO
_pickerView.showsSelectionIndicator = NO;
注意:设置UIPickerView的行数与列数需要设置数据源,遵守UIPickerViewDataSource,设置UIPickerView的内容需要设置代理,并且遵守代理方法UIPickerViewDelegate。
5.-(void)pickerView:(UIPickerView*)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;
当点击UIPickerView的某一列中某一行的时候,就会调用这个方法。
6. 返回第component列每一行的高度
- (CGFloat)pickerView:(UIPickerView *)pickerView
rowHeightForComponent:(NSInteger)component;
7.刷新某一列的数据
一旦调用了这个方法,就会重新给数据源发送消息计算这列的行数、重新给代理发送消息获得这列的内容
[pickerView reloadComponent:1];
8. 刷新所有列的数据
- (void)reloadAllComponents;
9. 返回选中的是第component列的第几行。
- (NSInteger)selectedRowInComponent:(NSInteger)component;
转载于:https://www.cnblogs.com/lege-Fool-Brid/p/4664016.html
UIPikerView的属性相关推荐
- UIPikerView的属性和使用方法
UIPikerView的属性 numberOfComponents:返回UIPickerView当前的列数 NSInteger num = _pickerView.numberOfComponents ...
- kotlin中继承父属性使用构造方法
kotlin中继承父属性使用构造方法 1. 定义父类,给它两个属性: abstract class AbstractResponseMessage {private var success = tru ...
- Python 类—类属性(私有属性、公有属性、实例属性、局部变量)类方法(实例方法、静态方法)
1. 创建类 类是对某个对象的定义,它包含有关对象动作方式的信息,包括它的名称.方法.属性和事件.类不存在于内存中,因此它本身并不是对象.当程序运行需要引用类的代码时,就会在内存中创建一个类的新实例, ...
- SpringBoot2.x 不反回空值属性
介绍 由于有的时候我们返回的数据中存在属性没有值得情况,或者是属性的值为空白字符串,这会浪费网络流量,又或者是前端框架存在的bug会导致null值或者是空白字符串在渲染的时候会报错. 处理方式 第一种 ...
- Python 属性__getattribute__
首先理解__getattribute__的用法,先看代码: class Tree(object):def __init__(self,name):self.name = nameself.cate = ...
- Python __dict__属性详解
由此可见, 类的静态函数.类函数.普通函数.全局变量以及一些内置的属性都是放在类__dict__里的 对象的__dict__中存储了一些属性 我们都知道Python一切皆对象,那么Python究竟是怎 ...
- vue响应式给数组中的对象添加新属性
需要使用到vue的全局api $set(item,'newParam','value')方法 group: [ // 对象数组{ id: '1', name: '任务1' ,disable: fals ...
- Cocos 属性常用参数
default:设置属性的默认值,这个默认值仅在组件第一次添加到节点上时才会用到 type:限定属性的数据类型,详见 CCClass 进阶参考:type 参数 visible:设为 false 则不在 ...
- React router 的 Route 中 component 和 render 属性理解
React router 的 Route 中 component 和 render 属性理解 Route 标签的三个互斥属性 render.component.children Route 就是用来匹 ...
最新文章
- 读书笔记——javascript闭包
- 前端学习(1732):前端系列javascript之状态切换
- [文章存档]Azure上部署的java app在向第三方服务传送中文时出现乱码
- js 计时器无法清除是为什么
- pandorabox 潘多拉固件路由器作为无线打印机服务器记录
- 配置Cisco ASA 5512 公网访问ASDM 详解
- Python计算离散序列的自相关函数
- 掌握 3 个搜索技巧,在 GitHub 上快速找到实用软件资源
- 码农十分钟的音律概述 纯律 五度相生律 十二平均律
- 【CDH】cdh 安装新节点卡在“Acquiring installation lock...“
- 笔者带你剖析三种常见的分布式路由算法
- 南丁格尔玫瑰图 With ggplot2【R语言】
- 智汀如何让绿米Aqara无线开关一键联动不同品牌的智能设备?以智汀窗帘电机、星辰智能台灯为例
- 示波器观察IIC通讯协议-STM32F4读写24C08EEPROM时序图-新人首更
- android 电视盒子 遥控器 获取,Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听...
- Mac OS X 10.7.5 Lion 系统安装 U 盘制作
- python 二级 —— turtle
- python爬虫实验——爬取网页图片+网页源代码
- 评价最高影片JAVAlibrary_视频 | 手游大神,动画导演,机圈新贵,极客怎么评价愤怒的小鸟2?...
- 2020网易游戏测试一面面经(春招上海)