Iphone 为多个UIPickerView设置数据
我有两个UIPickerViews,其中的数据是从一个数组中提取的,尽管我似乎无法单独编程。以下是我在UIPickerViews中使用的代码:Iphone 为多个UIPickerView设置数据,iphone,ios,uipickerview,Iphone,Ios,Uipickerview,我有两个UIPickerViews,其中的数据是从一个数组中提取的,尽管我似乎无法单独编程。以下是我在UIPickerViews中使用的代码: -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component { return [treatments count]; } - (NSInteger)numberOfComponentsInPickerView:(UI
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return [treatments count];
}
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1;
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return[[treatments objectAtIndex:row]valueForKey:@"treatmentName"];
}
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
_buttonText.text = [[treatments objectAtIndex:row]valueForKey:@"treatmentName"];
if (![_buttonText.text isEqual: @"Pick a Treatment Name"]) {
_buttonText.textColor = [UIColor blackColor];
}
}
-(NSInteger)nursePicker:(UIPickerView *)nursePicker numberOfRowsInComponent:(NSInteger)component {
return [nurses count];
}
- (NSString *)nursePicker:(UIPickerView *)nursePicker titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return[[nurses objectAtIndex:row]valueForKey:@"nurseName"];
}
当我运行代码时,选择器显示相同的数据
提前感谢您应该放一个BOOL来检查数据。创建一个名为treatment的BOOL,当第一个选择器可用时,将BOOL设置为YES,当第二个选择器可用时,将BOOL设置为NO。然后检查您的方法,查看哪个选择器是它们的选择器,并输入数据
@interface NotesViewController ()
{
BOOL treatment;
}
- (void)firstPickerComesUP
{
treatment = YES;
}
- (void)secondPickerComesUP
{
treatment = NO;
}
存储对两个picker视图的引用,并使用作为参数传递给datasource方法的UIPickerView来确定您正在使用的picker视图
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
if (pickerView == self.nursePicker) {
return [nurses count];
}
else if (pickerView == self.treatmentPicker) {
return [treatments count];
}
}
每个数据源方法都有相同的想法当您运行该代码时会发生什么?两个数据采集器中都显示相同的数据?(护士或治疗)他们不是日期采集器,他们只是UIPicker,治疗数据在两者之间。这可能是因为他们处于有序状态。抱歉,虽然我对ios程序很陌生。谢谢,这让我走上了修复它的正确道路。我必须对他们所有人都这么做