当我单击按钮时,UIAlertView 会提示用户输入名称。然后这个名称被创建为一个新的“客户”对象并插入到一个可变数组中。
有一个名为“CustListByName”的单独可变数组,它存储所有名称的列表。
我遇到的问题是,当添加第二个或第三个名字时,应用程序崩溃了。有时会在第二次尝试时发生,有时在第三次尝试时发生。除了 (lldb) 之外,调试器中没有给出任何信息。该程序报告 EXC_BAD_ACCESS,然后将我转储到带有一堆汇编代码的屏幕。
崩溃发生在这些代码行中:
本质上,它会清除名称数组,然后根据对象数组重新填充它。我已经用断点一步一步地研究过,但直到崩溃点之前一切似乎都是正确的。这也令人困惑,为什么在第二次或第三次尝试时会发生这种情况,而不是第一次。
[custListByName removeAllObjects];
for (Customer *object in custListByObject) {
[custListByName addObject:object->name];
}
这是每次单击新客户按钮时创建和插入客户的代码:
Customer *tempCust = [[Customer alloc] init];
tempCust->name =[[alertView textFieldAtIndex:0] text];
[custListByObject addObject:tempCust];
[tempCust release];
我真的很感激这方面的帮助,谢谢!