【发布时间】:2009-09-08 14:34:04
【问题描述】:
我希望有人能告诉我为什么我错了。这是我的代码的 sn-p:
TimeLogAppDelegate *appDelegate = (TimeLogAppDelegate *)[[UIApplication sharedApplication] delegate];
PickFromListViewController * pl = [[PickFromListViewController alloc] initWithNibName:@"PickList" bundle:nil];
pickList = pl;
[pickList setSearchItems:[appDelegate tableListMutableArray:type ] :NSLocalizedString(type,nil)];
pickList.callingViewController = self;
[pl release];
pickList.responseSelector = [[type lowercaseString] stringByAppendingString: @"Selected:"];
pickList.includeNone = YES;
pickList.includeNew = YES;
[self.navigationController pushViewController:pickList animated:YES];
如您所见,我在中途释放 pl 只是为了制造问题。 'pickList' 显然是一个 PickFromListViewController 并在 Header 中声明。我将它设置为一个属性(@property (nonatomic, retain) PickFromListViewController *pickList;)然后我 @synthesize 它。
我的问题是:
pl 发布后,我在访问 pickList 时遇到 BAD ACCESS 错误,表明指针不再可用,但我认为 pickList 是合成的,它会一直保留到我在 dealloc 时释放它?
谁能告诉我为什么我错了?
非常感谢
【问题讨论】:
-
详细的明智问题,但问题标题没有提供任何关于您要问什么的线索......
-
抱歉,谢谢 - 我没有意识到清楚问题的重要性。
标签: iphone