【发布时间】:2011-11-10 09:16:15
【问题描述】:
在我的应用程序中,我有一个 UIViewController,它由另一个 ViewController 的导航控制器推送。它包含一些视图、按钮、滚动视图和加速度计支持。当我点击导航控制器的“后退”按钮时,应用程序崩溃而没有任何日志消息,除了这个: “警告:无法读取 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.3.3 (8J2)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib 的符号(找不到文件)。 (gdb)" 调试器将我链接到 main.m 中的这一行:
int retVal = UIApplicationMain(argc, argv, nil, nil);
带有“EXEC_BAD_ACCESS” 这是什么意思?
编辑: 你们都是对的。 问题出在加速度计上。我设置了委托 ([UIAccelerometer sharedAccelerometer].delegate = self;) 并没有删除它。这就是为什么我的代码中没有可供调试器链接的行。我刚刚添加了这个:
- (void)viewWillDisappear:(BOOL)animated {
[UIAccelerometer sharedAccelerometer].delegate = nil;
}
问题消失了。因此,如果您使用任何设备功能,请小心使用代理。
【问题讨论】:
标签: iphone objective-c crash exc-bad-access navigationcontroller