问题描述
|
我有一个UI按钮,按下后它可以正常工作。
但是,如果我按了三下按钮,我会收到一个EXc_BAD_ACCESS错误。
我以为我在某个地方放了东西,但是找不到解决方案。
请你帮助我好吗?
亲切的问候。
这是我按下按钮时的功能。然后在解除分配时释放它们。当我跟踪时,它不会给出功能错误。我在函数之后得到它,但是我不知道该函数之后的代码在哪里。
- (IBAction) doSomething: (id)sender
{
[self.answerDict replaceObjectAtIndex:currentPageNumber withObject:@\"1\"];
[self.b setimage:nil forState:UIControlStatenormal];
[self.c setimage:nil forState:UIControlStatenormal];
[self.d setimage:nil forState:UIControlStatenormal];
[self.e setimage:nil forState:UIControlStatenormal];
UIImage *img = [UIImage imageNamed:@\"a.jpg\"];
[self.a setimage:img forState:UIControlStatenormal];
[img release];
}
解决方法
UIImage *img = [UIImage imageNamed:@\"a.jpg\"];
[self.a setImage:img forState:UIControlStateNormal];
[img release];
[img release];
是问题。您正在释放一个您不拥有的对象。在这种情况下,3ѭ会自动释放。
移去[img release];
,看看是否发生死机,我建议您逐行注释代码,这样您将了解BAD_ACCESS错误的目的。首先,关闭doSomething中的整个代码:可能的主要原因是您的按钮中...