モーダル ビュー コントローラーをポップするメイン ウィンドウがあります。このモーダル ビュー コントローラーで実行すると、メイン ウィンドウに戻り、自分自身を閉じます。次に、メイン ウィンドウは、animated=YES の新しいモーダル ビュー コントローラーをポップします。
問題は、最初の modalviewcontroller 内で行われる却下呼び出しが両方に適用され、SecondController が表示されないことです。
親呼び出しの前後に最初の却下を置いても、何も変わりません。最初の却下が animate= NO で設定されている場合、すべて正常に動作します。しかし、私はアニメーションが必要です。
Main.m
- (void) entry {
FirstController *nextWindow = [[FirstController alloc] initWithNibName:@"theNIB" bundle:nil];
nextWindow.caller = self;
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:nextWindow];
[self.navigationController presentModalViewController:navController animated:YES];
[nextWindow release];
[navController release];
}
- (void) thingsDoneInFirstModalController:(OBJECT)returnValue retval2:(OBJECT2)returnValue2 {
[self display2ndController];
}
- (void) display2ndController {
SecondController *nextWindow;
nextWindow = [[SecondController alloc] initWithNibName:@"NIB2" bundle:nil];
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:nextWindow];
[self.navigationController presentModalViewController:navController animated:YES];
[navController release];
[nextWindow release];
}
1st ModalViewController.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.navigationController dismissModalViewControllerAnimated:YES];
[self.caller thingsDoneInFirstModalController:theResult retval2:someMoreResult];
}
どうすればいいですか?視界に何も捉えたくない....消えて...
同じナビゲーションコントローラーから呼び出されないため、なぜ却下が衝突するのですか?