2010-11-20 4 views
0

내 응용 프로그램에서는 내 응용 프로그램의 기본보기 몇 가지를 잡고 유지 관리하는 데 사용하려고하는 mainViewController가 있습니다. 먼저 스플래시 화면을로드했으나 사용자가 스플래시 화면을 탭하면 기본 메뉴로 이동합니다.UINavigationController 제목을 표시하지만보기가 없습니다.

스플래시 화면 부분이 정상적으로 작동하지만 NavigationController 부분에 문제가 있습니다.


[splashView.view removeFromSuperview];

mainMenu = [[menuScreenViewController alloc] initWithNibName : @ "menuScreenViewController"번들 : nil]; mainMenu.title = @ "Menu"; mainNavController = [[UINavigationController alloc] init]; [mainNavController pushViewController : mainMenu animated : NO];

[MAINVC.view addSubview : mainNavController.view];

[mainMenu release]; [mainNavController release];

[splashView release];


(MAINVC는 다른 곳에서 내 메인보기 컨트롤러로 정의 됨).

어쨌든 이렇게하면 '메뉴'라는 제목의 탐색 컨트롤러가 표시되지만 mainMenu보기 컨트롤러에 포함 된보기가 탐색 컨트롤러에 표시되지 않습니다.

mainMenu의 뷰에 MAINVC.view의 하위 뷰를 추가하면 해당 뷰가 올바르게 표시됩니다.

내 탐색 컨트롤러에 표시하는 방법에 대한 제안 사항이 있으십니까?

+0

이 대답은 도움이 되었습니까? –

답변

0

avery, 당신은 루트보기 컨트롤러로 mainMenu를 사용하여 네비게이션 컨트롤러를 초기화해야하고 새로운 뷰를 초기화하는 대신에 초기화해야합니다. 루트보기 컨트롤러가 작동해야합니다. 쇼 위의 주석으로

mainMenu = [[menuScreenViewController alloc] initWithNibName:@"menuScreenViewController" bundle:nil]; 
mainMenu.title = @"Menu"; 
mainNavController = [[UINavigationController alloc] initWithRootViewController:mainMenu]; 

//ADD MODAL SPLASH SCREEN HERE 

[MAINVC.view addSubview:mainNavController.view]; 

[mainMenu release]; 
[mainNavController release]; 

[splashView release]; 

, 나는이 방법을 초기화 한 후 다음 modalViewController으로 탐색 컨트롤러에 시작 화면을 추가하는 것이 좋습니다 것입니다. 이렇게하면 터치 스크린을 누를 때 mainMenu 초기화로 인한 지연을 방지 할 수 있습니다. 그런 다음 모달보기에 터치가 수신되면 다음을 호출 할 수 있습니다.

관련 문제