【问题标题】:App crashing without errors应用程序崩溃而没有错误
【发布时间】:2012-12-30 21:29:56
【问题描述】:

在我的应用程序中,我有四个按钮。当我按下四个按钮中的两个时,应用程序冻结。奇怪的是,没有出现错误,调试器窗口中也没有任何内容。我是 iOS 开发的新手,所以我不知道如何解决这个问题。该应用程序在应用程序开始崩溃之前运行良好,而且我没有更改任何代码,所以我不知道发生了什么。有人可以帮帮我吗?

这是按钮按下位置的代码。一直很好用,不知道为什么突然就不行了:

- (IBAction)showMapView:(id)sender
{
    P2OViewController *pvc = [[P2OViewController alloc]init];
    [self.navigationController pushViewController:pvc
                                         animated:YES];
}

- (IBAction)showTableView:(id)sender
{
    TableViewController *tableView = [[TableViewController alloc]init];
    [self.navigationController pushViewController:tableView
                                         animated:YES];
}

所以我添加了全局断点,但什么也没发生。该应用程序仍在运行,调试器导航器说它仍在运行。所以我猜该应用程序正在冻结,而不是崩溃。我不知道如何解决这个问题。

【问题讨论】:

  • 你应该发布代码,没有人会得到这样的问题。
  • 请为您的按钮添加一些代码,至少是 -(IBAction) 方法
  • 要解决这个问题,首先从问题中删除那个可怜的不相关的“xcode”标签。
  • 您是否检查过以确保您没有不小心在这些方法上设置断点。有几次我不小心放了一些,它也使它看起来好像崩溃了。这可能不是你的问题,但值得排除。
  • 不,我也这么认为,但我检查并确保没有。

标签: objective-c debugging


【解决方案1】:

似乎是内存问题。不要在每次单击按钮时创建一个 p20viewcontroller 对象和 tableviewcontroller 对象,而是尝试在程序开始的某个地方只创建一次这些对象。

按钮点击应该只包含导航到下一个屏幕的代码。不要在每次按钮点击时创建一个新对象。

【讨论】:

  • 我还能在哪里创建它们?此代码来自导航控制器的根视图控制器。它是应用程序的主菜单。
【解决方案2】:

我建议您检查 IBActions 和代码之间的连接。此类无法解释的错误可能是由于 IB 中的连接丢失或不正确造成的。

【讨论】:

    猜你喜欢
    • 2021-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多