UIPickerView的讲解
UIPickerView需要遵循的协议有<UIPickerViewDataSource>和<UIPickerViewDelegate>
其中<UIPickerViewDataSource>只有两个方法,但是必须要实现的
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView*)pickerView
{
return n;//n是一个整数,这个方法返回的是UIPickerView一共有几列
}
- (NSInteger)pickerView:(UIPickerView*)pickerView numberOfRowsInComponent:(NSInteger)component
{
return n;//这个方法返回的是指定组有多少行
}
上面这两个方法与UITableView需要遵循的协议大致相同。
下面是<UIPickerViewDelegate>的一些方法
- (NSString*)pickerView:(UIPickerView*)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
//这个方法返回的是指定位置的内容显示,一般就是初始化UIPickerView上的显示内容
return [NSArray objectAtIndex:row];
}
- (void)pickerView:(UIPickerView*)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
//当你单击某一列中的某一行时回调这个方法,一般用来动态关联行和列。
}
例如:
pickerViews是UIPickerView对象的实例
NSInteger row1 = [pickerViews selectedRowInComponent:0];//意思就是返回你所单击的第一列的行数,同理
NSInteger row2 = [pickerViews selectedRowInComponent:1];//就是返回你单击的第二列的行数。