そのモーダルView Controllerを表示したのと同じView Controllerが閉じるべきなのです。親のView Controllerに、モーダルモードで表示した子を閉じるように通知するにはいくつかの方法がありますが、よく使われる方法はデリゲーションです。
参考PDF:iPhone OS View Controller プログラミングガイド
そのモーダルView Controllerを表示したのと同じView Controllerが閉じるべきなのです。親のView Controllerに、モーダルモードで表示した子を閉じるように通知するにはいくつかの方法がありますが、よく使われる方法はデリゲーションです。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
viewController = [[RootViewController alloc] init];
navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
[window addSubview:navigationController.view];
[window makeKeyAndVisible];
return YES;
}
-(void)loadView{
CGRect bounds = [[UIScreen mainScreen] applicationFrame];
view = [[UIView alloc] initWithFrame:bounds];
view.backgroundColor = [UIColor redColor];
self.view = view;
[view release];
}
モーダルView Controllerは、新規に1画面分のコンテンツを表示するときに自由に使えるツールです。参考PDF:
モーダルView Controllerは、UITabBarControllerやUINavigationControllerのように、
UIViewControllerの特定のサブクラスではありません。
アプリケーションでモーダルView Controllerを使用する理由としては、... 何らかの情報を収集したり表示したりするために、アプリケーションのワークフローに一時的に割り込みを行うことを意味しています。