【发布时间】:2011-09-15 16:10:25
【问题描述】:
我正在使用 JSON 将数据解析为 NSArray 'courseArray'。然后我使用 NSPredicate 过滤这些数据并将其存储到“行”中。问题是,我不知道如何确定“行”是否为空。例如:如果记录存在,行将包含适当的对象,但如果记录不存在,则应用程序崩溃(同样当我使用 NSLog 查看数组的内容时,它的空白,我相信它应该说它的 nil?如果没有对象)。我怎样才能解决这个问题?
if (dict)
{
courseArray = [[dict objectForKey:@"lab"] retain];
NSPredicate* predicate = [NSPredicate predicateWithFormat:@"labNumber== %@",labSelected]; //filter
rows = [[courseArray filteredArrayUsingPredicate:predicate]retain];
}
[jsonreturn release];
self.formattedTextView.opaque = NO;
self.formattedTextView.backgroundColor = [UIColor clearColor];
NSLog(@"array %@",rows);
**NSDictionary *currentSelection = [rows objectAtIndex:0];** (app crashes at this line - [NSArray objectAtIndex:]: index 0 beyond bounds for empty array')
NSString *labNumber = [currentSelection objectForKey:@"labNumber"];
【问题讨论】:
标签: objective-c json ios4 nsarray nsdictionary