现在的位置: 首页 > 综合 > 正文

iphone 实现了单个组件选取器

2013年08月02日 ⁄ 综合 ⁄ 共 1079字 ⁄ 字号 评论关闭

实现了单个组件选取器。

1。

一般都是在一个controller类中实现委托和数据源。

在类的头文件中声明协议:

<UIPickerViewDelegate , UIPickerViewDataSource>

2.

定义类的成员变量和输出口

UIPickerView * singlePicker;

NSArray * pickerData;

@property (nonatomic , retain) IBOutlet UIPickerView * singlePicker;

@property (nonatomic , retain) IBOutlet NSArray * pickerData;

3..xib文件中添加一个Picker View控件。

a.和File's Owner关联输出口。

b.在选取器上按下command+2打开链接检索器。把DataSource和Delegate链接到File's Owner上,也就是设置数据源和委托。

-----以下是在.m文件中的修改:-----

4。声明输出口

@synthesize singlePicker;

@synthesize pickerData;

5.viewDidUnload函数中清空

self.singlePicker = nil;

self.pickerData = nil;

6.dealloc函数中释放控件

[singlePicker release];

[pickerData release];

7

添加数据源:

#pragma mark -

#pragma mark Picker Data Source methods

//获取一共有几个组件。

-(NSInteger) numberOfComponentsInPickerView:(UIPickerView *)pickerView

{

return 1;

}

//获取元素个数。

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger) component

{

return [pickerData count];

}

#pragma mark -

#pragma mark Picker delegate methods

//设置委托,功能:选取器要求提供关于指定组件指定行的数据。

-(NSString *) pickerView:(UIPickerView *) pickerView titleForRow:(NSInteger)row forComponent:(NSInteger) component

{

return [pickerData objectAtIndex:row];

}

抱歉!评论已关闭.