选取器被用来取代PC上面的下拉菜单,它是一个大大的滚轮,它占用固定的大小 320×216.
一、创建
大小虽然固定,但是位置可以任意(不过横向被充满,咱也只能改变纵向位置)。与UItableView 类似,UIpickerView 类也需要一个数据源。与表格视图不同的是,选取器不使用索引路径,而是用一个NSinteger 值来标识每一行。选取器可以有多个表盘,每个都可以,作为一个组件引用。
选取器视图使用代理作为数据源,因此数据源可以存在于另一个类或者视图控制器中。
二、属性
恶心的苹果把许多属性保留为私有的,开放给开发者的少的可怜,可怜到唯一可用的外观选项就是选择窗口。
将选取器的 showsSelectionIndicator 属性设置为YES,可以在当前选择上显示一个透明窗口:
三、数据源
创建好界面就要考虑数据源了。比必须实现下列数据源委托方法,这些方法是 UIPickerViewDataSource 协议的必要方法。
numberOfComponentsInPickerView
滚轮数量
numberOfRowsInComponent
为选取器中每个滚轮设置不同数目的行。这个方法返回指定滚轮的行数。
除此之外,UIPickerViewDelegate 协议还实现了下列方法,来获取选取器组件特定的信息。
titleForRow
返回对应滚轮(组件)的给定行的实际表盘取值。会以 NSString 对象返回这些值。
viewForRow
这个方法可以重写选取器显示组件表盘默认行为,令任何 UIView 类都可以在其中显示。
widthForComponet
返回给定组件(滚轮)的宽度。如果这方法未实现,选取器会自动调整到合适的宽度。
rowHeightComponent
返回给定组件(滚轮)的高度。如果这个方法未实现,选取器会自动调整到合适的高度。
四、显示
[ self.view addSubview:pickerView ];
五、读取选取器
使用视图的selectedRowInComponent 方法,是获得选取器视图被选中列的索引的最直接的方法:
也有一个委托方法,当用户选择了选取器中一行时,会收到通知。用这个方法可以向对象发出警报,这样它就可以对新行做出反应:
分享到:
相关推荐
iOS 年月份选择器 UIDatePicker UIPickerView
IOS应用源码——UIPickerView选择多个选项效果.zip
给大家介绍iOS利用控件UIPickerView实现城市选择器的效果,选择城市这一功能相信在大家日常开发的时候经常遇见,下面就来看看详细的实现过程,有需要的可以参考借鉴。
在iOS实际项目中,经常会出现界面中多个地方需要使用UIPickerView,如果在每个需要用到的地方都创建一个UIPickerView不仅更耗性能,而且还会让你的代码变得更加杂乱、冗余,因此我在这里向大家介绍一下我对...
以前在网上下了个时间选择器Demo,由于封装成UIActionSheet类型,而ios8弃用了UIActionSheet和UIAlertView,不得不对代码进行修改。将封装的UIActionSheet改为UIView,为了多态初始化时添加了枚举(几个时间选择器...
水平版本的 UIPickerView CPPickerView ,CPPickerView 是一个可定制的水平版本的 UIPickerView (基于滚轮)
IOS自定义弹出UIPickerView或UIDatePicker(动画效果)
ios应用源码之自定义风格uipickerview .
利用ios UIPickerView 封装的一个选择器类,可以实现选择中国地省市县区等!
简单的使用uiscrollview代替uipickerview时间选择器
http://blog.csdn.net/qq_15509071/article/details/72470108这篇博客的示例demo
UIPickView实现无限滚动效果,在很多情况下,我们常常需要在开发中自定义选择器,例如时钟选择样式
IOS移动手机中的导航条类(UIPickerView),官方文档,不骗人,英文的。
简单的省市区选择器 使用UIpickerView完成 欢迎各位童鞋学习使用 本代码是使用的本地plist的省市区文件完成的。 如果遇到需要省市区全在网络获取 而不会写的可以联系我 (因为我在项目中省市区就是网络获取的,京东...
UIPikerView时间选择器,自定义控件,选中颜色变化,取消和确定选中时间。开始进入选择器选中时间等操作!代理方法和控件代理及可实现
前两年IOS应用源码-主要是用于毕业设计学习的。
ios UIPickerView封装的中国省/市/区地址选择器 ,含有中国最新城市plist文件
好久没写过基础控件了,工作了好多都focus在功能代码了。都快把基础代码都扔掉了。复习下基础控件使用。 这是UI控件的UIPickerView 使用。包含三个小demo