【问题标题】:EXC_BAD_ACCESS on Simple Project XCode 4简单项目 XCode 4 上的 EXC_BAD_ACCESS
【发布时间】:2011-04-28 01:05:17
【问题描述】:
我需要有关 Xcode 4 的帮助。我开始了一些非常简单的事情,创建了一个可可项目并添加了一个 Window 对象并将其命名为首选项。
然后为了访问这个新窗口,我将它与菜单项“首选项”操作 makeKeyAndOrderFront 链接起来。
就是这样,然后当我运行应用程序时,第一次单击“首选项”菜单项时,首选项窗口打开就好了......在我关闭它并再次单击首选项菜单项后,应用程序崩溃并出现 EXC_BAD_ACCESS main.m
有谁知道问题出在哪里?
【问题讨论】:
标签:
xcode4
preferences
exc-bad-access
【解决方案1】:
我遇到了完全相同的问题,我怀疑我们都在遵循相同的稀疏教程信息线索来制作像 Apple 一样的“首选项”窗口。
我刚刚通过设置window = nil 解决了这个问题,而不是试图与[window autorelease] 相提并论。正如我测试的那样,使用[window release] 会立即导致问题,而[window autorelease] 会导致第二次崩溃。
【解决方案2】:
我有同样的行为。经过一些测试,我了解到问题在于第二次单击首选项菜单时,您向已释放的窗口发送了一条消息(该对象不再存在)。您可以通过在 XCode 的可执行文件的“参数”选项卡上添加设置为“是”的“NSZombieEnabled”环境变量来验证它。
我解决了这个问题,在界面构建器中为用作首选项窗口的窗口取消选择“关闭时释放”检查。
再见。彼得。