我是一名新的iOS开发人员,致力于处理一些遗留代码。我从代码中了解到,为了启动一个新的屏幕,我可以做到:
SomeViewController* view = [[SomeViewController alloc] initWithNibName:@"SomeViewController" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:view animated:YES];
[view release];
我从屏幕A启动了屏幕B.我需要从屏幕B进一步启动屏幕C.流程是A - > B - > C.当我做B-> C时,应用冻结,屏幕看起来像这样:
然而,当我做A-> C时,它的效果非常好。谁看过这个吗?真的很感谢你的帮助。
答案 0 :(得分:1)
如果不看更多代码,很难说出真正的问题是什么。但是,我注意到两个问题:
在其中一条评论中已经提到了这一点。将UIView推送到UIViewController堆栈是一个未经解决的操作 - 您应该推送UIViewController。例如:
[self.navigationController pushViewController:myViewControllerForViewC animated:YES];