我发现了一些关于这个问题的其他帖子,但这些建议都没有真正帮助我。我知道在新的 iOS 中,presentModalViewController 已经过时,应该用我已经做过的 presentViewController 替换。一些帖子还建议设置委托,我也这样做了。所以让我解释一下我的应用程序在做什么,希望有人可以帮助我。:)
我认为我的应用程序一直运行良好,直到 iOS 5。
我有一个选项卡式控件。其中一个选项卡是我使用 UISearchDisplayController 的搜索。因此,例如,在文本区域中,键入“音乐”,然后在下面的表格视图中将显示与搜索匹配的条目。然后用户将单击一个条目,然后我将使用 presentViewController(原为 presentModalViewController)呈现另一个视图(显示有关该条目的详细信息)。这一直有效,直到最近......它崩溃了!我已经尝试了几件事,但都没有奏效,因为其他帖子中提到的其他一些场景是不同的......
我记录了异常,它说的完全一样:“应用程序试图以模态方式呈现一个活动控制器。”
我测试的方式:我启动应用程序。单击“搜索”选项卡。然后在文本区域中输入一些内容。匹配条目的列表出现在表中。我点击一个条目。此时它应该呈现另一个视图,但它崩溃了,这是正在记录的错误。
在 didSelectRowAtIndexPath:(NSIndexPath *)indexPath {} 函数中,我创建了详细视图:
controller = [[SlaveReportPageViewController alloc] initWithNibName:@"SlaveReportPageViewController" bundle:nil];
然后我打电话:
[self presentViewController:controller animated:NO completion:nil];
启动它。
我很感激任何建议。谢谢你。