2013-10-31 3 views
0

나는 12 개의 다른 viewController (첫 번째, 두 번째, 세 번째, 네 번째)가있는 타르 모음 컨트롤러로 리디렉션되는 네 개의 단추가있는 (항상 세로 모드이어야 함)이 있습니다.Portrait 모드에서 두 개의 화면을 설정하고 iPhone에서 Landscape의 다른 두 개의 화면을 설정하는 방법은 무엇입니까?

항상 세로 모드에서 firstViewControllerfourthViewController을 갖고 싶습니다. 가로 모드의 secondViewControllerthirdViewController은 언제나 homeViewController 양식 컨트롤로 이동합니다. homeViewController은 항상 세로 모드 여야합니다.

답변

0

ViewController의 -shouldAutrotate - Method를 사용하여 장치가있을 때 회전하지 않도록 할 수 있습니다. 그냥 NO를 반환하면 xib 파일이나 스토리 보드에서 지정한 것처럼 VC가 항상 표시됩니다. Heres는 워드 프로세서 : https://developer.apple.com/library/ios/documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006926-CH3-SW124

과를 heres 예 :

-(BOOL)shouldAutorotate{ 
    return NO; 
} 

편집 : 당신의 COMENT 님의 질문에 답변

UITabBarControllers 못해 앞으로 shouldAutorotate - ChildViewControllers에 값입니다. (사이드 노트로서 NavigationController도 마찬가지입니다.) 가장 좋은 방법은 TabBarController를 서브 클래스 화하는 것입니다. 이것을 설명하는 Stackoverflow-Post에 대한 링크를 제공합니다. 재미있게 보내십시오. IO6 doesn't call -(BOOL)shouldAutorotate

+0

shouldAutorotate with presentViewController를 사용할 때 제대로 작동합니다. 하지만 모든 4 가지보기가있는 UITabBarController를 사용할 때는 그렇지 않습니다. 미리 감사드립니다 –

+0

@ KuldeepBhimte - 내가 명확한 설명이 필요합니다 : 당신이 수동으로 (코드에서) 전환 할 때 작동하지만, TabBarController에서 Segue로 전환 할 때 의미하지 않습니까? 그 맞습니까? – katzenhut

+0

예, 두 가지 모두 withAutorotate 메서드를 사용했습니다 (presentViewController 및 UITabBarController가있는 뷰 컨트롤러를 할당하는 동안). presentViewController가있는 너트 방향이 올바르게 작동하고 탭 막대가 없으므로 .. –

관련 문제