Ios UIImagePickerController EXC\u错误\u访问错误
我将我的应用程序设置为如下运行:Ios UIImagePickerController EXC\u错误\u访问错误,ios,uiimagepickercontroller,exc-bad-access,Ios,Uiimagepickercontroller,Exc Bad Access,我将我的应用程序设置为如下运行: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]]; UIImag
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:
[[UIScreen mainScreen] bounds]];
UIImagePickerController* picker = [[UIImagePickerController alloc] init];
self.viewController = picker;
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
在图像选择器出现后,我选择,例如,“摄影机滚动”。之后,我按下后退按钮(标题为“照片”)。应用程序崩溃,导致EXC_坏_访问错误。
当我启用僵尸对象时,我收到带有以下日志的“EXC\u ARM\u断点(子代码=0xdefe)”错误。要么:
[UIView willRemoveSubview:]: message sent to deallocated instance 0x2088ea20
或者,如果我继续进行图像选择:
-[PLImageScrollView willRemoveSubview:]: message sent to deallocated instance 0x1d82c910
另一方面,如果我创建了一个新项目,并且只在AppDelegate中放置了声明的代码,那么代码就可以正常工作——没有错误
现在,我开始了一个新的项目,我将复制我以前项目中的内容,以找出问题所在。如果有人知道这些错误发生的原因,请分享您的想法。尝试在
AppDelegate.h
中将UIImagePickerController*picker
声明为类级变量。在-(BOOL)应用程序:(UIApplication*)应用程序
完成后,选择器将被解除分配。我发现了问题所在。AppDelegate间接导入了我自己的自定义UIView类别,我(出于未知原因)在其中实现了dealloc方法
实际上,所有视图都无法正确地解除分配。我从那个类别中删除了dealoc方法,一切都正常