2012-09-08 2 views
1

그래서 내 응용 프로그램의 기본 창에 추가 된 UIView을 가졌습니다. UIView은 반드시 전체 화면을 가리는 것은 아닙니다. 방향이 바뀌면 새로운 x-y 오프셋 값을 사용하여이 방향을 UIView으로 조정합니다. iPad에서 테스트를 시작할 때까지 코드가 올바르게 작동했습니다. 이제 문제가 발생합니다. 회전시 UIView은 오프셋을 올바르게 유지하지 않으며 새 회전시 화면에서 튀어 오르는 것처럼 보입니다. 누군가 "UIView을 회전 할 때 올바른 오프셋을 유지하는"문제를 해결 했습니까? 현재 사용중인 코드를 공유 할 수 있습니다.오리엔테이션 변경에 따라 UIWindow에 올바른 오프셋이 추가 된 상태로 UIView를 회전하십시오.

+0

코드를 표시하거나 UI 스크린 샷을 표시하십시오. 대답하기 전에 더 명확 해집니다. – TheTiger

답변

0

특정 오프셋을 유지하려면 부모보기 프레임이 변경 될 때보기의 동작 방식을 정의해야합니다. UIView 정확히 autoresizingMask 속성을 지정하여 수행됩니다. 다른 마스크를 보시고 here을 신청하십시오.

+0

@ Vakul, Tiguero : 어떻게 자동 마스크가 작동하는지 잘 모르겠습니다. 기본적으로 창 개체에 추가 된 UIView를 회전하려면 방향 변경을위한 NSNotification을 설정합니다. 그런 다음 새로운 방향에 따라보기를 변형하려고합니다. 코드의 일부가 [여기]입니다. (http://dl.dropbox.com/u/4902546/code.rtf) – rishabh

+0

이 코드는 인터페이스 방향에 따라 기본 회전을 처리하지만 정확한 수학을 원합니다. 또는 누군가가 동일한 해결 방법을 쉽게 찾은 경우 – rishabh

+0

달성하고자하는 것에 대한 스크린 샷이 있습니까? 코드를 살펴 봅니다. 정말 특별한 필요가있는 경우를 제외하고는 방향 변경을 감지하여 수행 한 것처럼 뷰 프레임을 변경하는 대신 autoResizingMask를 사용하여 다시 변경하는 것을 권장하지 않습니다. 각 방향에 대한보기의 스크린 샷을 게시 할 수 있습니까? – tiguero

관련 문제