因此,出于某种原因,在某种方法下,我的NSNumber
始终是nil
,它的驱使我坚果。为什么我的NSNumber总是零?
如果用户选择在我的选择器一排,这个被调用,它工作正常:
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
self.query.activityLevel = [NSNumber numberWithInt:[[[self.activityArray objectAtIndex:row]objectForKey:@"key"]intValue]];
}
然而,当用户不选择一个行,只是继续到下一个VC,我请检查activityLevel
是否为nil
,如果是,则将其设置为1
。
- (void)donePressed {
if (!self.query.activityLevel) {
self.query.activityLevel = [NSNumber numberWithInt:2];
}
NSNumber *calories = [Calculations numberOfCaloriesNeededForQuery:self.query];
[self dismissModalViewControllerAnimated:YES];
}
的问题是,只要用户不选择行和它击中self.query.activityLevel = [NSNumber numberWithInt:2];
,如果我打印的对象,它仍然是nil
。我不知道为什么。我设置一个断点,它更是创下该行...
0123问题:1)你使用ARC和2)查询不是零? – 2012-04-08 07:22:55
我使用ARC和是的,它似乎是查询是零。但是,如果用户选择一行,它不是零。 – Jon 2012-04-08 07:23:51