UIImagePickerController 在 iOS4 上崩溃

发布于 2024-09-25 20:18:44 字数 1120 浏览 0 评论 0原文

当尝试显示 UIImagePickerController 时,我遇到了奇怪的问题,我的应用程序在 iOS4 上崩溃了。这是日志的输出:

malloc: *** error for object 0x550ba20: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug

设置断点,尝试监视对象 0x550ba20 的名称(使用 print-object)不起作用。启用僵尸检测也不起作用。这是我的代码:

if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

  cameraPicker = [[UIImagePickerController alloc] init];
  cameraPicker.delegate = self;

  cameraPicker.sourceType = UIImagePickerControllerSourceTypeCamera;

  // Insert the overlay:
  cameraPicker.cameraOverlayView = self.overlay;
  self.cameraPicker.delegate = self;

  //Hide controls
  cameraPicker.showsCameraControls = NO;
  cameraPicker.navigationBarHidden = YES;

  // Make camera view full screen:
  cameraPicker.wantsFullScreenLayout = YES;
  cameraPicker.cameraViewTransform = CGAffineTransformScale(self.cameraPicker.cameraViewTransform, 1.0, 1.12412);


  [self presentModalViewController:cameraPicker animated:NO];
  [cameraPicker release];

有什么想法吗?代码在viewDidLoad的最后执行。

When trying to show the UIImagePickerController I had strange problems with my app crashing on iOS4. Here's the output from log:

malloc: *** error for object 0x550ba20: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug

Setting breakpoints, trying to spy the name of the object 0x550ba20 (with print-object) does not work. Enabling zombie detection also does not work. Here is my code:

if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

  cameraPicker = [[UIImagePickerController alloc] init];
  cameraPicker.delegate = self;

  cameraPicker.sourceType = UIImagePickerControllerSourceTypeCamera;

  // Insert the overlay:
  cameraPicker.cameraOverlayView = self.overlay;
  self.cameraPicker.delegate = self;

  //Hide controls
  cameraPicker.showsCameraControls = NO;
  cameraPicker.navigationBarHidden = YES;

  // Make camera view full screen:
  cameraPicker.wantsFullScreenLayout = YES;
  cameraPicker.cameraViewTransform = CGAffineTransformScale(self.cameraPicker.cameraViewTransform, 1.0, 1.12412);


  [self presentModalViewController:cameraPicker animated:NO];
  [cameraPicker release];

Any ideas? Code is executed at the very end of viewDidLoad.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

煮茶煮酒煮时光 2024-10-02 20:18:44

CameraPicker 是一个属性吗?您首先将其初始化为局部变量,然后将其用作属性:

cameraPicker.cameraOverlayView = self.overlay;
!!self.!!cameraPicker.delegate = self;

cameraPicker.cameraViewTransform = CGAffineTransformScale(!!self.!!cameraPicker.cameraViewTransform, 1.0, 1.12412);

Is cameraPicker a property? You are initializing it first as a local variable and then using it as a property:

cameraPicker.cameraOverlayView = self.overlay;
!!self.!!cameraPicker.delegate = self;

and

cameraPicker.cameraViewTransform = CGAffineTransformScale(!!self.!!cameraPicker.cameraViewTransform, 1.0, 1.12412);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文