【问题标题】:dismissViewControllerAnimated crashingdismissViewControllerAnimated 崩溃
【发布时间】:2015-11-04 07:39:16
【问题描述】:

我的项目中有 Simple popOver 控制器。我可以使用带有以下代码的操作按钮将其关闭。

[[self presentingViewController] dismissViewControllerAnimated:YES completion:nil];

但如果我在该 viewController 上执行某些操作,有时应用程序会崩溃 在解雇它之前。

示例:有一个pickerView用于选择和发布按钮。但是如果我做了一些选择并取消它而不发布它,我会收到这个错误。它只是偶尔发生。不是每次。如果它发生一次,那么它可能会在之后的每次发生。

谁能解释一下?是内存泄漏还是什么?

【问题讨论】:

  • 请写崩溃日志?
  • 在 Navigator 面板(左侧面板)的 Breakpoint 窗格中,设置一个 Exception 断点并再次触发崩溃。它将显示触发异常的代码行,而不是捕获异常的代码行。
  • 你的意思是把@try 屏蔽掉?
  • 只需复制崩溃日志并将其粘贴到您的问题中即可。
  • 这开始看起来像是内存管理问题。打开僵尸跟踪并重试。 (产品->方案-编辑方案。单击诊断并选中启用僵尸对象。)

标签: ios objective-c cocoa-touch segue


【解决方案1】:

我认为已经解决了问题。在那个 PopOver 新窗口中,我使用的是 locationManager,而我只是使用
[locationManager stopUpdatingLocation]; 但我也添加了以下内容 locationManager = nil;

不再崩溃

【讨论】:

    【解决方案2】:

    有时如果您有如下所述的 dealloc 功能,则可能会出现此问题。

    - (void)dealloc {
          [_yourview release]; //don't do this
          [super dealloc];
    }
    

    我希望这可能对其他人有所帮助

    【讨论】:

      猜你喜欢
      • 2015-04-27
      • 1970-01-01
      • 1970-01-01
      • 2011-12-10
      • 2012-09-20
      • 2022-11-02
      • 1970-01-01
      • 2011-11-22
      • 2021-05-14
      相关资源
      最近更新 更多