我想在按钮clck上执行以下操作:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex == 0)
{
if (QuestionMutableArray==nil) {
[self testIterator];
}
else
{
[myMutableArray release];
[myDictionary release];
[self dismissModalViewControllerAnimated:YES];
//[self release];
}
}
}
用这段代码回到parentView控制器后...当我再次来到这个tableView时我想用新的NSMutableArray重新加载我的tableView。我可以用dismissModalViewController清空我的集合(NSMutableArray或字典)吗? p>
答案 0 :(得分:1)
使用removeAllObjects
方法。
答案 1 :(得分:1)
当您尝试访问已释放的内存时,会出现EXC_BAD_ACCESS错误。也许您在发布数组或字典后尝试访问它们。而是从数组或字典中删除对象。
答案 2 :(得分:0)
EXC_BAD_ACCESS通常有两个原因:
在你的情况下,我假设你发布了数组和字典,但你没有正确初始化。确保在每次使用之前对它们进行了适当的初始化,并保持保留状态直到完成它们为止。它也可能是由于在界面构建器上播放引起的:我记得多次连接IBOutlet并确定名称没有任何意义并重命名该属性。在每个连接之后,xcode会自动在dealloc方法中放置一个release语句,如果你在一个属性被释放两次的情况下,你可能还想在那个视图控制器上使用IB来检查它。
答案 3 :(得分:0)
不要释放它使对象成为nil
。