我有我认为是一个奇怪的错误,但我当然是相对较新的iPhone开发,所以它可能不是所有这些奇怪毕竟。NSMutableArray删除对象,但然后应用程序崩溃
我有一个数组(NSMutableArray)的对象,我跟踪(每次用户触摸一个按钮时添加到数组)我试图做的是当数组达到一定的值我将新对象添加到数组的开头,然后删除数组中的最后一个对象。当我遍历我的代码时,所有工作都会删除对象,但随后应用崩溃了......当应用崩溃时,调试器不在任何代码行,应用中没有循环或定时器,所以我可以'不要想着其他任何正在运行的东西。
这里是碰撞
if([objectArray count] > 10)
{
MyObject *objectToRemove = [[MyObject alloc] init];
objectToRemove = [objectArray objectAtIndex:10];
[objectArray removeObjectAtIndex:10];
[objectToRemove removeFromSuperview];
}
此代码的主要一点是,每次用户触摸的按钮的对象被添加到屏幕和显示之前执行的代码,然后当对象数量达到10并且用户再次触摸该按钮,删除已添加的第一个对象并显示新对象。如果我注释掉removeObjectAtIndex行,一切都按预期工作,但数组不断增长。
我也尝试删除UIview被删除后,该应用程序的行为相同的方式删除对象。如果我尝试从不同索引的数组中删除一个对象(I.E 3),该应用程序不会崩溃,但它不会给我预期的结果。但就像我说的代码运行良好,当我检查数组的执行前后数组的数量分别为11和10。
你可以提供任何帮助,将不胜感激,
BWC