2014-07-27 3 views
0

보기 컨트롤러를 스택으로 푸시하기 위해 사용자 지정 전환을 시도하고 있습니다.UINavigationController Custom CATransition

네비게이션 바를 그 위치에 "고정"하고 네비게이션 바 아래에서 전환하는 쉬운 방법이 있는지 알지 못합니다.

나는 다음과 같은 코드를 사용하고 있습니다 : 나는 kCATransitionPush을 시도

CATransition *transition = [CATransition animation]; 
transition.duration = 0.3f; 
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; 
transition.type = kCATransitionMoveIn; 
transition.subtype = kCATransitionFromBottom; 
[self.navigationController.view.layer addAnimation:transition forKey:nil]; 

먼저,하지만 난합니다 ... 내비게이션 바는 아래로 이동 볼 수 있었다 그래서 나는 kCATransitionMoveIn을 시험하고는 조금 더 나은 느낌,하지만 여전히하지 방법은 내가 원했던 ...

이것을 달성하는 간단한 방법이 있습니까?

답변

1

사용자 정의 탐색 컨트롤러 전환을 수행하는 방법이 아닙니다. iOS 7 맞춤 애니메이터 프로토콜 (예 : UIViewControllerAnimatedTransitioning)을 사용해야합니다.

+0

여기에 내 자신의 예제 코드가 있습니다. 이 특정 예에서는 새로운 뷰 컨트롤러의 뷰를 상단이 아닌 측면에서 가져 왔지만, 사용자가 나중에 수행 할 수 있도록 뷰 컨트롤러를 조정하는 방법은 분명합니다. https://github.com/mattneub/Programming-iOS-Book-Examples/blob/master/iOS7bookExamples/bk2ch06p301customAnimation4/NavCustomPushTest/AppDelegate.m – matt