2009-06-23 5 views
0

UINavigationController에있는 뷰를 회전하는 방법이 약간 명확하지 않습니다.UINavigationController를 사용한 자동 회전

나는 우선 내 자신 중 하나를 사용하여 UINavigationController가 개체를 재정의 :

  • (무효) didRotateFromInterfaceOrientation : (UIInterfaceOrientation) fromInterfaceOrientation {YES 반환; } I 컨트롤러의 스택에 하나의 뷰가 그 뷰 그것에 두 뷰와 XIB에서로드

. 나는 초상화에서 풍경으로 전환하고 싶다. 일반적으로보기 자체의 nib 파일 내에서보기를 변경하여이 문제를 해결할 것입니다. 내비게이션 컨트롤러 내에 회전 코드를 구현해야하나요 아니면 내보기 코드 내에 삽입해야합니까?

  • (무효) willAnimateFirstHalfOfRotationToInterfaceOrientation : (UIInterfaceOrientation) toInterfaceOrientation 기간 : (NSTimeInterval) 기간

willAnimate 코드는 내가 뷰 자체에서 사용하는 데 사용 해요,하지만 즉 I 여전히 뷰가 변경되는 것을 볼 수 없으며 NavigationController에서 뷰에 액세스하여이를 변경하거나 탐색 컨트롤러에서 동일한 메서드를 재정의하고 뷰를 전환해야 할 수도 있습니다.

제안 사항? 나는 실제로 이것을 해 본 적이 없으며 TabViewControllers와 NavigationController가 모두 세로 모드로 기본 설정되어 있다는 것을 알았습니다.

답변

0

탐색 컨트롤러에서 RootView를 변경하려고했기 때문에보기를 변경할 수 없었습니다. 내비게이션 스택의 루트 지점에서 결코 볼 수없는 내 자신의 의사 루트 뷰 컨트롤러를 배치하여이 문제를 해결했습니다. 나는 네비게이션 컨트롤 중 몇 가지를 오버라이드하여 기능을 동일하게 유지하고 필요한대로 필자가 바라는 루트 뷰를 변경할 수있게되었습니다.

http://starterstep.wordpress.com/2009/03/05/changing-a-uinavigationcontroller 년대 루트 뷰 컨트롤러/

:

올바른 방향으로 시작이 링크에서 찾을 수 있습니다

관련 문제