我正在尝试根据UIPickerView
中的第一个和第二个选择输出一定数量。我这里有这个代码。
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
if([[list objectAtIndex:[pickerView selectedRowInComponent:0]] isEqual: @"1 Gallon"] && [list2 objectAtIndex:[pickerView selectedRowInComponent:1] isEqual: @"Grams"])
output.text = @"1 GALLON GRAMS";
if([[list objectAtIndex:[pickerView selectedRowInComponent:0]] isEqual: @"2 Gallons"] && [list2 objectAtIndex:[pickerView selectedRowInComponent:1] isEqual: @"Ounces"])
output.text = @"2 GALLONS OUNCES";
}
但是我继续收到NSMutableArray
的无可见@interface错误,声明了选择器objectAtIndex:isequal
我该如何比较两个值的返回值?与IF comp(0) == 3 and comp(1) ==2
类似,输出3.4到我的标签。
答案 0 :(得分:4)
那是因为NSMutableArray没有" objectAtIndex:isEqual"选择器。
您需要从选择器视图中获取NSString,然后将其与您存储在NSMutableArray对象中的字符串(可能是名为" list
"的ivars进行比较。 " list2
"。)
E.G。
NSString * stringPointedToFromPicker = (NSString *)[list objectAtIndex: [pickerView selectedRowInComponent: 0]];
if([stringPointedToFromPicker isEqual: @"1 Gallon"]) // okay for now, but do you want
output.text = @"1 GALLON GRAMS"; // hard coded, non-localized strings like this?