在我的 iPhone 应用程序中,我使用的是 Pushnotifications。当我收到通知时,我想从当前视图控制器移动到另一个视图控制器。我- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
在 appdelegate 本身中写了。我正在使用基于视图的应用程序,所以我想使用presentModalViewController
(我认为)。我使用了以下代码:
UIViewController *view = (UIViewController*)self.viewController.presentedViewController;
[view presentModalViewController:self.anotherVC animated:NO];
但有错误
2012-06-19 17:47:52.521 iPhoneApp[1450:607] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present a nil modal view controller on target <HomeScreenVC: 0x1fb77cc0>.'
这里出了什么问题?任何想法。
编辑 我将详细说明这个问题:我有视图控制器 VC1、VC2、VC3 和 VC4。我的 rootviewcontroller 是 VC1。如果当我在 VC2 或 VC4 时收到推送通知,当我单击通知警报的确定按钮时,我想移动到 VC3。但是警报视图的委托方法在 appdelegate.m 中。
我已经更新了我的代码
self.menuVC = [[MenuScreenVC alloc] initWithNibName:@"MenuScreenVC" bundle:nil];
UIViewController *view = (UIViewController*)self.viewController.presentedViewController;
[view presentModalViewController:self.menuVC animated:NO];
现在如果我在 VC2,我可以导航到 VC3,如果我在 VC4,我不能。请帮忙