应用程序崩溃但没有错误提示

3
在我的应用程序中,有四个按钮。当我按下其中两个按钮时,应用程序会冻结。奇怪的是,没有出现任何错误,并且调试器窗口中也没有任何信息。由于我是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];
}

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


1
你应该发布代码,否则没有人能够理解问题所在。 - IluTov
1
请在您的按钮的-(IBAction)方法中至少添加一些代码。 - Omarj
为了解决这个问题,首先要从问题中删除那个与之不相关的 "xcode" 标签。 - user529758
你有检查过是否不小心在这些方法上放了断点吗?我有几次不小心放了一些,导致看起来好像程序崩溃了。那可能不是你的问题,但排除一下也值得。 - Josiah
@ChandlerDeAngelis 你需要在这两个函数中放置NSLog语句或断点,以确保它们被调用。如果当你点击按钮时它们没有被调用,你需要找出原因。也许这些按钮在你的xib文件中没有与它们连接。 - rob mayoff
显示剩余7条评论
2个回答

1
我建议你检查你的IBActions和代码之间的连接。未经解释的错误可能是由IB中缺失或不正确的连接引起的。

1

看起来是内存问题。不要在每次按钮点击时创建p20viewcontroller对象和tableviewcontroller对象,尝试在程序开始的某个地方仅创建这些对象一次。

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


我还能在哪里创建它们呢?这段代码来自导航控制器的根视图控制器。它是应用程序的主菜单。 - Chandler De Angelis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接