0

현재 내 앱에서는 사용자가 방향을 지정할 때 다른 뷰를 표시해야하는 한보기를 제외하고는 옆 방향을 허용하지 않아야합니다. mainviewcontroller (UINavigationController)에서 액세스 할 수있는 20 개의 UIViewController가 있다고 가정합니다. 이제 UIViewController # 7에는 두 개의보기가 있는데, 하나는 세로 방향으로, 다른 하나는 세로 방향으로 표시되어 있다고 가정합니다. 저는 여러분들이 앱의 삶 전체에서 Rotation Orientation을 없애고 싶다고 생각하지는 않지만 단지 19 개의 뷰에 대해서만, 그리고 마지막 uiviewcontroller가 Rotation Orientation을 지원한다고 생각하지 않기를 바랍니다.Objective-C에서 회전 방향 제거

사용자가 하나의보기를 위해 옆으로 향한 경우 사용자는 평소대로 방향 효과없이 앱을보아야합니다.

사용자가 세로 방향보기 만 사용하고 그 하나의 viewcontroller 용으로 사용하기를 원합니다. 사용자가 휴대 전화를 180도 회전 시켜서 아래로 내려 놓은 경우 앱이 뒤집어 야하지만 세로보기 상태 여야합니다.

아무 아이디어 나 있습니까? 나는 ... 나는 내가 멀리 체재 할 것입니다있는 사용되지 않습니다 사용하고 그래서 몇 가지 방법 아이폰 OS 6.1에 배포하고 있습니다

같은이 방법으로

: 나는 몇 가지 테스트 케이스를 수행 한

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 
{ 
    return NO; 
} 

:

- (NSUInteger) supportedInterfaceOrientations 
{ 
    return UIInterfaceOrientationMaskPortrait; 
} 

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation 
{ 
    return UIInterfaceOrientationPortrait; 
} 

- (BOOL) shouldAutorotate{ 
    return NO; 
} 

또한 stackoverflow 관련 질문을 확인한 결과 간단히 답변을 찾을 수 없습니다.

이것은 아마도 두 가지 방법 중 하나 여야한다고 생각하지만이 작업을 수행 할 수는 없습니다. UIViewController에서 측면 방향을 어떻게 제거합니까?

+1

단순히 앱 속성을 설정하여 하나의 방향을 제외한 모든 것을 잠급니다. 앱 속성의 첫 번째 화면에있는 버튼입니다. –

+0

편집 된 질문 – jsetting32

+0

UIViewController 또는 UIView에 지원되는 방향을 반환하는 함수가 있습니다. 바로 그 이름을 변경하십시오. (이름이 지금 나를 이스케이프 처리합니다) – bengoesboom

답변

0

이 주제를 다루는 SO에 관한 질문이 있습니다. 예를 들어, 풍부한 정보가 있습니다 here, 예를 들면.

또는 this 또는 this일까요?

이 주제에서 본 WWDC 비디오 중 하나 인 IIRC는 모달 프레젠테이션을하는 것이 좋지만, 그렇게한다면 다양한 해킹이 가능합니다.

편집 : 여기

더 많은 데이터 : 여기 iOS6 Preferred Interface Orientation Not Working

그리고 : 내가 말했듯이 In iOS6, trouble forcing ViewController to certain interfaceOrientation when pushed on stack

, 내가보기 컨트롤러를 (모달 또는 기타 등등) 제시 믿고 당신이 원하는 경우에 갈 수있는 방법입니다 오리 엔테이션을 강제로, this 설명을 참조하십시오.