iPhone & Cocoa
네비게이션 뷰컨트롤러 기반 프로그램 만들기
iwoohaha
2009. 7. 6. 16:50
반응형
네비게이션 뷰컨트롤러 기반 프로그램 프로그램에서 네비게이션 뷰컨트롤러는 다른 뷰컨트롤러간의 이동을 책임지는 역할을 한다.
즉, 네비게이션 뷰컨트롤러 자체만으로 프로그램을 디자인하지는 않는 편이다.
다시말해서 또 다른 뷰컨트롤러가 있어야 한다.
네비게이션 뷰컨트롤러의 가장 첫 화면을 나타내기 위한 뷰컨트롤러를 MainViewController 라고 이름지었다면 다음과 같은 방법으로 네비게이션 뷰컨트롤러 기반 프로그램을 만들 수 있다.
- (void)applicationDidFinishLaunching:(UIApplication *)application {
// Override point for customization after application launch
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:[[MainViewController alloc] init]];
[window addSubview:navController.view];
[navController release];
[window makeKeyAndVisible];
}
UINavigationController 클래스의 인스턴스 메소드인 initWithRootViewController 를 사용하고 있다.
이 메소드의 파라미터로 루트 뷰컨트롤러 인스턴스를 전달하면 된다.
실행결과는 다음과 같다.
화면에 아무것도 나타나지 않은 이유는 MainViewController 에 아무 뷰도 얹지 않았기 때문이다.
즉, 네비게이션 뷰컨트롤러 자체만으로 프로그램을 디자인하지는 않는 편이다.
다시말해서 또 다른 뷰컨트롤러가 있어야 한다.
네비게이션 뷰컨트롤러의 가장 첫 화면을 나타내기 위한 뷰컨트롤러를 MainViewController 라고 이름지었다면 다음과 같은 방법으로 네비게이션 뷰컨트롤러 기반 프로그램을 만들 수 있다.
- (void)applicationDidFinishLaunching:(UIApplication *)application {
// Override point for customization after application launch
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:[[MainViewController alloc] init]];
[window addSubview:navController.view];
[navController release];
[window makeKeyAndVisible];
}
UINavigationController 클래스의 인스턴스 메소드인 initWithRootViewController 를 사용하고 있다.
이 메소드의 파라미터로 루트 뷰컨트롤러 인스턴스를 전달하면 된다.
실행결과는 다음과 같다.
화면에 아무것도 나타나지 않은 이유는 MainViewController 에 아무 뷰도 얹지 않았기 때문이다.
반응형