我正在使用一个 UISplitViewController,它使用两个 UINavigationController,一个用于 MasterVC,另一个用于 DetailVC。我正在尝试从 MasterVC 的导航堆栈中的 VC 向 DetailVC 的 topViewController 发送消息。这就是我访问接收 VC 的方式。
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
UISplitViewController *splitViewController = (UISplitViewController*)window.rootViewController;
UINavigationController *navigationController = (UINavigationController*)[splitViewController.viewControllers objectAtIndex:1];
DefaultDetailedViewController_iPad *defaultVC = (DefaultDetailedViewController_iPad*)navigationController.topViewController;
if ( [defaultVC conformsToProtocol:@protocol(MapDelegate)] ) {
[defaultVC clearPreviousAnnotations];
}
IF 执行但 clearPreviousAnnotations 没有被调用。访问 DetailVC 并向其发送消息的最佳方式是什么?
我还应该说我是一个业余爱好者,对编程非常陌生。
谢谢你。
编辑1:
那很简单,我通过这种方式访问它:
RootViewController *rvc = (RootViewController*)[[self.navigationController viewControllers] objectAtIndex:0];
[rvc.mapDelegate clearPreviousAnnotations];
再次感谢各位。