2010-01-13 5 views
1

웹보기를 사용하여 매우 간단한 웹 브라우저 앱을 만들었습니다. 이제 iPhone을 돌릴 때 페이지의 텍스트도 회전하도록 앱을 가져와야합니다.UIWebView의 내용을 어떻게 회전합니까?

어떻게하면됩니까?

자동 크기 조정 대화 상자에서 혼란 스럽습니다. 그래서 거기에 뭔가 잘못했을 수도 있습니다.

도움이 될 것입니다.

+3

지정할 수 있습니까? WebView의 컨텐츠가 자동 회전되도록하여 사용자가 컨텐츠를 오른쪽으로 위로 향한 상태로 휴대 전화를 돌릴 때 사용 하시겠습니까? 또는 휴대 전화로 콘텐츠를 회전 시키려면 콘텐츠를 옆으로, 뒤집어 등으로 돌릴 수 있습니다. 질문에서 어떤 의미인지 알 수 없습니다. –

답변

1

나는 내용물이 아니라 UIWebView 위젯을 회전 시키려고 생각한다. 내용도 회전해야합니다. 회전을 지원하려면보기 컨트롤러에 다음 코드를 추가하십시오.

- (BOOL)shouldAutorotateToInterfaceOrientation: 
    (UIInterfaceOrientation)interfaceOrientation { 
     return YES; 
} 

회전 된 위젯이 다르게 예상 될 수 있습니다. Interface Builder에서 스트럿과 스프링을 조정하십시오.

+0

나는 그걸 끝냈다. 본문은 스트럿과 스프링인데 세로로 남아있다? UIWebView는 UIView이고 UIViewController 서브 클래스가 아니며 shouldAutorotate를 보내지 않을 것입니다. – Rupert

+1

UIWebView는 UIView이며 UIViewController 하위 클래스가 아니며 shouldAutorotate를 보내지 않습니다. – Nick

0

무엇이 잘못되었는지 판단하기 위해 몇 가지 샘플 코드를 제공해야한다고 생각합니다. Jacek이 말했듯이, UIWebView 자체에서 자동 회전을 지원하기 만하면된다고 생각합니다. 내용은 자동으로 회전해야합니다.

0

기기 방향 및보기 프레임이 혼동 스럽다고 생각합니다.

대부분의 경우 UIView는 방향 변경과 관련하여 변경됩니다. 그러나 오리엔테이션 변경이 아니라 레이아웃 변경으로 인해 명확 해졌습니다.

UIViewController는 장치 방향을 고려해야합니다. UIView는 그렇지 않습니다. 장치의 방향 변경은 UIViewController에 해당 인스턴스 메소드에서 이벤트를 캡처 할 때 :

– willRotateToInterfaceOrientation:duration: 
– willAnimateRotationToInterfaceOrientation:duration: 
– didRotateFromInterfaceOrientation: 

의 UIViewController 후 다시 레이아웃 뷰 - UIViews의 프레이밍 선도. 대부분의 경우, iOS는 UIViewAutoresizeMask를 설정하여 재 개설 프로세스를 간소화하는 데 도움을 줄 수 있습니다. 예를 들어,

myWebview.autoresizeMask = UIVIewAutoresizeMaskFlexibleHeight | UIVIewAutoresizeMaskFlexibleHeight; 

은 웹뷰의 수퍼 뷰가 경계를 변경하면 그에 따라 웹뷰가 변경된다는 것을 의미합니다.

요약하면 UIView는 프레임/경계 등만 처리합니다.

관련 문제