Pickers
Pickers are click wheels for the iPhone: large, spinning dials that can host any number of different options. Pickers are used in place of drop-down menus to provide a graphically rich selection interface for the user. Close cousin to a control, the UIPickerView
class was designed as a full-blown view class due to its sheer size on the screen. This allows it to be used almost anywhere, including a main view or in conjunction with a preferences table.
Creating a Picker
The UIPickerView
class contains a UIPickerTable
object, which is derived from the UITable
object. Like other tables, the UIPickerTable
uses a data binding. Unlike other table classes, the picker's data source isn't specified with the dataSource
method. Instead, a delegate is used for receiving data binding requests in addition to picker events. This was likely done to give the UIPickerView
class the simplicity of a control. The UIPickerView
data binding is small enough that it can be tucked nicely into controlling views, although the picker itself can also be subclassed to create a self-contained picker.
When creating the picker view, use a 200-pixel-high window. Initializing the picker with any other frame sizes will cause the custom size to be ignored. The picker can be placed anywhere on another view, but is generally located at the bottom.
UIPickerView *pickerView = [ [ UIPickerView alloc ] initWithFrame: CGRectMake(0, 280, 320, 200)]; [ pickerView setDelegate: self ];
Picking picker properties
To toggle the ...
Get iPhone Open Application Development now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.