UIPickerView的用法总结
2012-03-23 14:54
423 查看
1.UIPickerView的初始化
pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0.0f, 200.0f, 320.0f, 216.0f)];
pickerView.delegate = self; //指定Delegate
pickerView.showsSelectionIndicator = YES; //显示选中框
2.实现UIPickerViewDelegate和UIPickerViewDataSource
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; //返回列数
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component; //返回每列的最大行数
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component; //每一列中每一行的具体内容
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component //选中哪一列哪一行
[mypicker selectRow:(NSInteger)3 inComponent:0 animated:YES];
一个示例:
1.在.h头文件里面添加以下代码:
[cpp] view
plaincopy
#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中:
![](http://hi.csdn.net/attachment/201203/12/0_1331554191qtuO.gif)
3.连接各项,将view中的Picker View与mypickerView连接,将“点我显示选择的信息”button的Touch Up Inside事件与showSelectmessage方法相连,将view中label与mylabel相连,将view中Picker View的dataSource和delegate连接到File‘s Owner,如下图所示:
![](http://hi.csdn.net/attachment/201203/12/0_133155477402EO.gif)
4.在viewDidLoad方法中添加如下代码,初始化pickerView的数据:
[cpp] view
plaincopy
- (void)viewDidLoad
{
NSArray *array=[[NSArray alloc] initWithObjects:@"哈哈",
@"two",
@"three",
@"four",
@"five",
nil];
self.pickerViewData = array;//注意一定要写self,否则不对
[array release];
[super viewDidLoad];
5.添加界面上按钮的点击事件方法,该方法将pickerView中选中的内容显示在label中:
[cpp] view
plaincopy
-(IBAction) showSelectmessage{
NSInteger row = [mypickerView selectedRowInComponent:0];
NSString * mys = [pickerViewData objectAtIndex:row];
mylabel.text = mys;
}
6.实现如下方法,设置Picker View视图中的组件(列)数量:
[cpp] view
plaincopy
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
7.实现如下方法,设置Picker View视图中显示的项(行)数:
[cpp] view
plaincopy
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [pickerViewData count];
}
8.实现如下方法,将pickerviewData数据填充到Picker View中:
[cpp] view
plaincopy
-(UIView *)pickerView:(UIPickerView *)pickerView
titleForRow:(NSInteger)row
forComponent:(NSInteger)component
{
return [pickerViewData objectAtIndex:row];
}
pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0.0f, 200.0f, 320.0f, 216.0f)];
pickerView.delegate = self; //指定Delegate
pickerView.showsSelectionIndicator = YES; //显示选中框
2.实现UIPickerViewDelegate和UIPickerViewDataSource
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; //返回列数
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component; //返回每列的最大行数
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component; //每一列中每一行的具体内容
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component //选中哪一列哪一行
[mypicker selectRow:(NSInteger)3 inComponent:0 animated:YES];
一个示例:
1.在.h头文件里面添加以下代码:
[cpp] view
plaincopy
#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中:
![](http://hi.csdn.net/attachment/201203/12/0_1331554191qtuO.gif)
3.连接各项,将view中的Picker View与mypickerView连接,将“点我显示选择的信息”button的Touch Up Inside事件与showSelectmessage方法相连,将view中label与mylabel相连,将view中Picker View的dataSource和delegate连接到File‘s Owner,如下图所示:
![](http://hi.csdn.net/attachment/201203/12/0_133155477402EO.gif)
4.在viewDidLoad方法中添加如下代码,初始化pickerView的数据:
[cpp] view
plaincopy
- (void)viewDidLoad
{
NSArray *array=[[NSArray alloc] initWithObjects:@"哈哈",
@"two",
@"three",
@"four",
@"five",
nil];
self.pickerViewData = array;//注意一定要写self,否则不对
[array release];
[super viewDidLoad];
5.添加界面上按钮的点击事件方法,该方法将pickerView中选中的内容显示在label中:
[cpp] view
plaincopy
-(IBAction) showSelectmessage{
NSInteger row = [mypickerView selectedRowInComponent:0];
NSString * mys = [pickerViewData objectAtIndex:row];
mylabel.text = mys;
}
6.实现如下方法,设置Picker View视图中的组件(列)数量:
[cpp] view
plaincopy
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
7.实现如下方法,设置Picker View视图中显示的项(行)数:
[cpp] view
plaincopy
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [pickerViewData count];
}
8.实现如下方法,将pickerviewData数据填充到Picker View中:
[cpp] view
plaincopy
-(UIView *)pickerView:(UIPickerView *)pickerView
titleForRow:(NSInteger)row
forComponent:(NSInteger)component
{
return [pickerViewData objectAtIndex:row];
}
![](http://hi.csdn.net/attachment/201203/12/0_1331555311N8nS.gif)
相关文章推荐
- UIPickerView的用法总结
- ios基础篇(七)——UISwich、UISlider、UIProgressView的用法总结
- uipickerview用法
- UIPickerView的用法
- IOS UIPickerView 用法
- UIPickerView基本用法
- ios基础篇(七)——UISwich、UISlider、UIProgressView的用法总结
- 【IOS 开发学习总结-OC-48】★★ios开发之UI控件——UIDatePicker与 UIPickerView
- UIPickerView 的用法
- UIImagePickerController 的基本用法 - iOS - UI基础知识总结14
- UIImageView用法大全 - iOS - UI基础知识总结7
- loadView/viewDidLoad/initWithNibName/awakeFromNib/initWithCoder的用法总结
- iOS UIActivityIndicatorView(指示控制器)用法总结
- iOS开发UI篇—UIPickerView控件简单介绍
- RecyclerView之更新UI数据的高级用法
- UIPickerView UIDatePicker的常见属性
- UIPickerView的应用
- Android 中 View移动总结:ViewDragHelper学习及用法详解
- iOS UIPickerView
- [非凡程序员]手写UIDatePicker和UIPickerView