iOS스터디(KJ-CODE) 발표자료.




메모


컨테이너뷰에 있는 컨트롤러를 전환해주는 방법.

코드상에서의 순서


//추가한다면

[self addChildViewController:viewControllerB]; 

[self.view addSubview:viewControllerB.view];

viewControllerB.view.frame = //크기결정해줘야함.

[viewControllerB didMoveToParentViewController:self]; 


//삭제일경우

[viewControllerA willMoveToParentViewController:nil]; 

[viewControllerA.view removeFromSuperview];     

[viewControllerA removeFromParentViewController];


didMoveToParentViewController가 콜백이 아닌 직접호출일까? 그이유는 애니메이션처리 때문에.. 

애니메이션이 언제 끝날지 모르므로...



//toViewController를 컨테이너에 추가

[self addChildViewController:toViewController];


//from부터to로 화면전환시 트랜젝션을 실행

[self transitionFromViewController:fromViewController

                   toViewController:toViewController

                           duration:1.0

                            options:UIViewAnimationOptionTransitionNone

                         animations:^{

                             //애니메이션 처리가 필요하다면...

                         }

                         completion:^(BOOL finished) {

                             // 추가가 완료되면 명시적으로 호출

                             [toViewController didMoveToParentViewController:self];

                         }];



컨테이너뷰

https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/BasicViewControllers/BasicViewControllers.html#//apple_ref/doc/uid/TP40007457-CH101-SW1


라이프사이클문서

https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/RespondingtoDisplay-Notifications/RespondingtoDisplay-Notifications.html#//apple_ref/doc/uid/TP40007457-CH12-SW1


컨테이너뷰 설명

http://qiita.com/paming/items/d8a29d644c994ce60d6a

Posted by 악당잰 트랙백 0 : 댓글 0

댓글을 달아 주세요