Jennifer Eve Vega
UIPickerView Tutorial
1. Add a New File, subclass of ViewController, to your project. In my example, the name of my class is ViewController.
2. Open ViewController.xib and drag a pickerview to your xib file.

3. Add a UIPickerView IBOutlet to your ViewController.h file, and synthesize it to your ViewController.m.
@property (nonatomic, strong) IBOutlet UIPickerView *myPickerView; //.h
@synthesize myPickerView; //.m
4. Connect your IBOutlet property to the object in your .xib file.

5. Go back to your ViewController.h, and make your interface header look like this:
@interface ViewController : UIViewController<UIPickerViewDataSource, UIPickerViewDelegate>
6. On your viewDidLoad, set the delegate and datasource of your pickerview to self;
– (void)viewDidLoad
{
[super viewDidLoad];
myPickerView.delegate = self;
myPickerView.dataSource = self;
}
7. Add an array that will hold your items for you.
If your items are constant, use NSArray, else, use NSMutableArray.
@property (nonatomic, strong) NSArray *itemsArray; //.h
@ synthesize itemsArray; //.m
8. Initialize your array.
itemsArray = [[NSArray alloc] initWithObjects:@\”Item 1\”, @\”Item 2\”, @\”Item 3\”, @\”Item 4\”, @\”Item 6\”, nil];
9. Add these delegate and datasource methods of pickerview in your ViewController.m class:
#pragma mark – UIPickerView DataSource
// returns the number of \’columns\’ to display.
– (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
// returns the # of rows in each component..
– (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [itemsArray count];
}
#pragma mark – UIPickerView Delegate
– (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 30.0;
}
– (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return [itemsArray objectAtIndex:row];
}
//If the user chooses from the pickerview, it calls this function;
– (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
//Let\’s print in the console what the user had chosen;
NSLog(@\”Chosen item: %@\”, [itemsArray objectAtIndex:row]);
}
10. Done! Hit Run!

#PickerView #UIPickerView #iPhone #InterfaceBuilder #UIPickerViewTutorial #iOSTutorial #mobile #PickerView #iOS