我有一个问题,我的应用程序,这在模拟器上运行良好,但是当我启动我的iDevice我得到了一个错误:应用工作在模拟器,但不是设备 - NSMutableArray的
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '*** -[NSMutableArray insertObject:atIndex:]: attempt to insert nil object at 0'
0 CoreFoundation 0x3513cfd3 __exceptionPreprocess + 114
1 libobjc.A.dylib 0x303928a5 objc_exception_throw + 24
2 CoreFoundation 0x350bff99 -[__NSArrayM insertObject:atIndex:] + 472
3 CoreFoundation 0x350bfda7 -[__NSArrayM addObject:] + 34
....
Program received signal: “SIGABRT”.
在调试器中我可以看到问题出在哪里。这个错误来自那里,在ADDOBJECT:
for (int i = 0; i < [arrayValues count]; i++) {
f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
myNumber =[f numberFromString:[arrayValues objectAtIndex:i]];
[arrayValues2 addObject:myNumber];
[f release]; }
在这里,我在arrayValues2 NSNumbers转换arrayValues(的NSString)的对象。
在模拟器中没有问题,数组不是空容器。 我不知道在哪里寻找。
我还检查了计算器的其他职位,他们是不是真的喜欢我的错误
哪里是在arrayValues来自的数据是数据上的模拟器和设备一样吗? – 2010-12-20 11:56:30