2つのUINavigationControllerを使用するUISplitViewControllerを使用しています。1つはMasterVC用で、もう1つは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];
どうもありがとうございました。