2010-07-20 2 views
1

iPhone 응용 프로그램에 대해 질문하고 싶습니다. 내 프로그램에는 여러 컨트롤러 클래스가있다. 그러나, 나는 그들을 다루는 방법을 모르고 다른보기 컨트롤러 클래스 사이에서 컨트롤 권한을 전환합니다. 사과 웹 사이트에서 몇 가지 코드를 읽었습니다. 누구든지 내게 설명 할 수 있니? 고맙습니다.iPhone에서 'setMyViewController'를 사용하는 방법은 무엇입니까?

// I create a view controller called 'MyViewController' 
- (void)applicationDidFinishLaunching:(UIApplication *)application {  

    NSLog(@"applicationDidFinishLaunching"); 

    MyViewController *aViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:[NSBundle mainBundle]]; // what meaning of this statement 
    [self setMyViewController:aViewController]; // can I set in other class 
    [aViewController release]; 

    UIView *controllersView = [myViewController view]; // what is it use? 
    [window addSubview:controllersView]; 

    // Override point for customization after application launch 
    [window makeKeyAndVisible]; 
} 

답변

1
// what meaning of this statement 
MyViewController *aViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:[NSBundle mainBundle]]; 

이 블록은 .xib 파일에서 기본 뷰 컨트롤러를로드합니다. 당신은 인터페이스 빌더에 대해 알아, 당신은 당신이 속성으로 viewControlelr을 가지고 당신은 어디에서의 ViewController를 설정할 수 있으며, MyViewController.xib에서의 ViewController의보기를 설정 한 다음

[self setMyViewController:aViewController]; // can I set in other class 

이론적으로이 라인을 사용하여로드 할 수 있습니다. 그러나 여기서 코드는 aViewController를 프로그램의 루트보기 컨트롤러로 설정한다는 것을 의미합니다.이 프로그램은 프로그램을 열 때 첫 번째보기 컨트롤러로 표시됩니다.

UIView *controllersView = [myViewController view]; // what is it use? 
    [window addSubview:controllersView]; 

이 두 행은보기를 표시하고 사용자가 볼 수있게합니다. 루트보기 컨트롤러의 하위보기를 기본 창에 추가 한 다음 표시하십시오.

+0

답장을 보내 주셔서 감사합니다. 여러 페이지를 표시하고 탭, 테이블, 버튼이있는 페이지가 있으면 어떤 유형의 프로젝트를 만들어야합니까? 나는 파일 -> 새 프로젝트 -> ??를 의미합니다. 네비게이션 기반의 윈도우를 사용하고 윈도우 기반 타입에 의해 선택된 새로운 클래스를 생성합니다. 맞습니까? 그렇지 않은 경우 어떤 수업을 만들어야합니까? 고맙습니다. – Questions

+1

아이팟에 음악 응용 프로그램이나 아이폰 애플 리케이션과 같은 뭔가를하고 싶다면, 당신은 탭 막대 응용 프로그램과 함께 가야합니다. 계층 구조를 원할 경우 탐색 기반 응용 프로그램을 사용할 수 있습니다. 아직 네가 의미하는 바를 얻지 못한다. 당신이 사용하고 있음을 의미합니다 : [self.navigationController pushViewController :], 맞습니까? – vodkhang

+0

답장을 보내 주셔서 감사합니다. 나는 주제가 이것에서 조금 벗어난 것 같아서, 나는 그 질문을 토론하기 위해 새로운 글을 열었다. 좀 보시고 제안을 해주시겠습니까? 고맙습니다. 게시 : http://stackoverflow.com/questions/3288426/how-to-pass-the-control-or-find-the-flow-of-the-this-iphone-application – Questions

관련 문제