[英]Program received signal EXC_BAD_ACCESS
當我單擊具有代碼的完成按鈕時
UIBarButtonItem * button = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(dismissView:)] autorelease];
self.navigationItem.rightBarButtonItem=UIBarButtonSystemItemDone;
[[self navigationItem] setRightBarButtonItem:button];
[button release];
-(void)dismissView: (id)sender
{
[self.navigationController popToRootViewControllerAnimated:YES];
}
應用程序崩潰並給出消息程序收到信號EXC_BAD_ACCESS
任何想法有什么問題。
感謝幫助。
這行是完全錯誤的:
self.navigationItem.rightBarButtonItem=UIBarButtonSystemItemDone;
去掉它。 之后,您要設置rightBarButtonItem
,也不UIBarButtonSystemItemDone
rightBarButtonItem
為UIBarButtonSystemItemDone
,這根本沒有任何意義。
哦,您在釋放button
。 拆下[button release];
也一樣
您過度釋放了按鈕。 您在分配/初始化時自動釋放它,然后在將其設置為導航項后再次釋放它。
您正在過度釋放button
。 第一行的+alloc
調用已經由同一行的-autorelease
平衡了, -autorelease
您無需在其上調用-release
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.