Iphone UIPickerView的一个小例子

来源:互联网 发布:网络商家卖货合作平台 编辑:程序博客网 时间:2024/04/29 16:37

1.在.h头文件里面添加以下代码:

#import <UIKit/UIKit.h>@interface PickerView : UIViewController {    IBOutlet UIPickerView * mypickerView;//连接的时候记得连上delegate    IBOutlet UILabel * mylabel;        NSArray *pickerViewData;//pickerView的数据}@property(nonatomic,retain) UIPickerView * mypickerView;@property(nonatomic,retain) UILabel * mylabel;@property(nonatomic,retain) NSArray *pickerViewData;//注意加上这句-(IBAction) showSelectmessage;//按钮点击事件@end

2.在xib文件里面添加一个pickerView,一个button,一个label,如下图所示,要实现的功能是在pickerView里面滚动选择某一项,然后点击“点我显示选择的信息”按钮将pickerView中选中的内容显示在最下面的label中:


3.连接各项,将view中的Picker View与mypickerView连接,将“点我显示选择的信息”button的Touch Up Inside事件与showSelectmessage方法相连,将view中label与mylabel相连,将view中Picker View的dataSource和delegate连接到File‘s Owner,如下图所示:


4.在viewDidLoad方法中添加如下代码,初始化pickerView的数据:

- (void)viewDidLoad{    NSArray *array=[[NSArray alloc] initWithObjects:@"哈哈",@"two",@"three",@"four",@"five",nil];self.pickerViewData = array;//注意一定要写self,否则不对[array release];        [super viewDidLoad];
5.添加界面上按钮的点击事件方法,该方法将pickerView中选中的内容显示在label中:

-(IBAction) showSelectmessage{    NSInteger row = [mypickerView selectedRowInComponent:0];NSString * mys = [pickerViewData objectAtIndex:row];mylabel.text = mys;    }
6.实现如下方法,设置Picker View视图中的组件(列)数量:

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{return 1;}

7.实现如下方法,设置Picker View视图中显示的项(行)数:

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{return [pickerViewData count];}

8.实现如下方法,将pickerviewData数据填充到Picker View中:

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