在为 iPad 和 iPhone 开发应用程序时,我遇到了一个非常烦人的问题。
我希望我的导航控制器(由故事板设置)推送一个显示一些详细信息的视图控制器。
以下代码曾经有效,但现在我在 iPhone 上推动控制器时遇到黑屏,而完全相同的代码在 iPad 上可以正常工作。所有使用的控制器都是非零值。发生的情况是显示使用导航控制器更改视图的通常动画,但之后只有黑屏。
ADetailViewController* detailController =
[self.storyboard instantiateViewControllerWithIdentifier:@"ADetailViewController"];
exposeController.data = aRealEstate;
exposeController.appData = self.appData;
[self.navigationController pushViewController: detailController animated:YES];
我对代码进行了一些调试并注意到,调用了 ADetailViewController 类的 viewDidLoad,但没有调用 viewDidAppear,这意味着显示了详细信息视图(我也通过黑屏注意到了 :-))
我会很感激这个问题的一种提示。
更新
我设法自己解决了这个问题。造成这种情况的原因是我在委托依赖项中构建了一个循环依赖项。当 rootView 将被隐藏时,这用于弹出推送的视图。