我被困在了很长一段时间,但无法找到解决方案。这是我的代码:`
NSLog(@"[tempArray retainCount]: %d",[tempArray retainCount]);
tempArray = [[NSMutableArray alloc] initWithArray:[allRemainingProductsDictionary objectForKey:[[allRemainingProductsDictionary allKeys]objectAtIndex:counter]]];
NSMutableDictionary *tempDictionary = [[NSMutableDictionary alloc] init];
[tempDictionary setObject:productName forKey:@"name"];
[tempArray release];
我使用this报告收到NSException崩溃。请帮忙。
答案 0 :(得分:2)
发送到NSDictionary实例的方法 getObjects:range:是一种NSArray方法。
您可能尝试使用 initWithArray 传递 NSDictionary 而不是 NSArray 。
答案 1 :(得分:-1)
NSLog条目是否显示?如果不是,那是因为tempArray不响应retainCount。如果你使用带有ARC for iOS 5的Xcode 4.2(除非你有遗留代码,否则你应该使用Xcode 4.2),你不需要担心release
或retain
。
否则,在某个地方你正在向对象发送一条它没有响应的消息。