11

即使遵循了这个论坛的所有答案,我仍然坚持这个问题。谁能以简单的方式告诉我该怎么做?我是 xcode 的新手。我已经启用了僵尸对象。

这是我的代码崩溃了

if ([[[AryStoreknowItem objectAtIndex:indexPath.row] objectForKey:@"action"] isEqualToString:@"a1"]) {

    NSString *t1 =[[AryStoreknowItem objectAtIndex:indexPath.row] objectForKey:@"title"];

    NSString *a1 = [[AryStoreknowItem objectAtIndex:indexPath.row] objectForKey:@"action"];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

    // saving an NSString
      [defaults setObject:a1 forKey:@"a1"];
      [defaults setObject:t1 forKey:@"t1"];

    JournalPage *journal=[[JournalPage alloc]initWithNibName:@"JournalPage" bundle:nil];

    [self presentModalViewController:journal animated:YES];

在我的应用程序中,我有多个 ViewController。当我单击 UINavigationBar 的后退按钮然后生成此类问题时,我无法解释我的问题,因为所有功能都正常工作。

例子 :-

1 - fitstVController(正常工作)

=> 它有 UITableView ,当我点击特定行时,它将在另一个 UIViewController (SecoundViewController) 上继续

2 - SecoundViewController(正常工作)

=> 它有 UITableView 和 UIActionSheet。当我选择 UiActionSheet 的按钮时,另一个 UIViewController (ThirdViewController) 是打开的

3 - ThirdViewController(无法打开)

=> 当我点击第三行时出现错误。如果我单击其他单元格也是如此,我单击的第三个单元格将在进入其他页面之前崩溃

4

4 回答 4

16

我认为我们这里没有足够的信息来诊断任何特定问题(而且很难按照您的描述进行操作)。尽管如此,我还是建议:

  1. 我建议通过静态分析器(Xcode“产品”菜单上的 ++ 或“分析”)运行您的代码shiftcommandB确保它不会提供任何警告。这将(除其他外)识别许多很容易困扰非 ARC 代码的常规内存问题。在您在这里获得一份干净的健康证明之前,再往前走是没有意义的。

  2. 我建议打开异常断点,看看它是否识别出问题根源的特定代码行。有时,这可以识别代码行,而无需通过查看堆栈跟踪来对错误发生的位置进行逆向工程。

  3. 鉴于您正在执行非 ARC 代码,您可能还想暂时打开僵尸。您可以在Scheme Configuration设置中看到此设置。

  4. 除此之外,我建议您参考 Ray Wenderlich 的文章My App Crashed, Now What?.

如果您仍然有错误,请与我们分享堆栈跟踪。

于 2013-10-07T08:16:30.130 回答
2

当一个对象仍在访问它时,您可能已经关闭了 ViewController。那是我的问题,阅读 Rob 的回答很有帮助。

于 2014-05-12T02:24:42.240 回答
2

这种类型的问题通常是由于内存释放/分配而发生的

产品 -> 清洁

在大多数情况下会解决这个问题

于 2018-07-08T14:35:53.917 回答
2

我在使用可重用视图 /XIB 时遇到了这个错误,并且出现了两个错误:

  • 我忘记在身份检查器中指定自定义类的名称

    在此处输入图像描述

  • 我在其出口中将视图作为我的特定视图类

    在此处输入图像描述

在 Identity Inspector 中指定视图类更正了错误

于 2019-01-21T17:51:12.477 回答