Iphone 具有更改值的UIpicker数组

Iphone 具有更改值的UIpicker数组,iphone,objective-c,uipickerview,Iphone,Objective C,Uipickerview,我正在制作一个应用程序,使用选择器让用户选择年龄和其他一些输入。例如:我有一个按钮年龄,当用户点击它时,选择器显示年龄。我设法为所有输入添加了单独的选择器,但在为每个选择器设置不同数组时遇到了问题 - (NSString *)pickerView:(UIPickerView *)thePickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { if (pickerview == picker) {

我正在制作一个应用程序,使用选择器让用户选择年龄和其他一些输入。例如:我有一个按钮年龄,当用户点击它时,选择器显示年龄。我设法为所有输入添加了单独的选择器,但在为每个选择器设置不同数组时遇到了问题

- (NSString *)pickerView:(UIPickerView *)thePickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { 
    if (pickerview == picker) {
        return [pickerViewArray objectAtIndex:row];
    }
    else if (pickerview == stagepicker)
        return [stagepickerarray objectAtInde:row];
    }
}

- (NSInteger)pickerView:(UIPickerView *)thePickerView numberOfRowsInComponent:(NSInteger)component {
    if (thePickerView == picker){ return [pickerViewArray count]; }
    else if (thePickerView == stagepicker){ [stagepickerarray count]; }
}
上述方法对我不起作用!。我这样做对吗

- (NSString *)pickerView:(UIPickerView *)thePickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { 
    if (pickerview == picker) {
听起来是不是应该用pickerview来写
pickerview

return [stagepickerarray objectAtInde:row];
听起来是不是
objectAtInde
应该是
objectAtIndex

else if (thePickerView == stagepicker){ [stagepickerarray count]; }

听起来好像某个地方缺少了一个
返回

为什么不使用一个包含多个组件的UIPickerView?大致如下:

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

NSInteger numberOfRows;

if (component == 0) {
     numberOfRows = [anArray count];
}
else if(component == 1) { 
    numberOfRows = [anotherArray count];
}
else { 
    numberOfRows = [aThirdArray count];
}

return numberOfRows;

}

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

NSString *stringIndex = [NSString stringWithFormat:@"TEST"];
if(component == 0) {

   return stringIndex = [anArray objectAtIndex:row];
}

else if(component == 1) {
    return stringIndex = [anotherArray objectAtIndex:row];
}

else {
   return stringIndex = [aThirdArray objectAtIndex:row];
}

return stringIndex;

}

天哪!对我来说,那是一个史诗般的失败打字错误!。在这三种情况下,XCode应该通过发出警告来提醒您。你很快就会学会用这种方法识别打字错误。我的数组是空的,尽管我已经给它赋值了!以下是我迄今为止所做的工作。您所说的.h文件是否将一个UIpicker用于不同的数组?我会尝试一下,让你知道事情的进展!是的,我现在正在做一件类似的事情,你就是这样做的。这里有一个很好的教程:如果一直向下滚动,您会看到他们制作了一个UIPickerView,其中包含2个组件和2个硬编码数组。