2011-08-09 2 views
1

iPad 앱을 만들었습니다. 가로 및 세로에서 잘 작동합니다. 앱이 가로 방향으로 회전 할 때를 제외하고는 팝업이 잘못 배치되었습니다. 의사와 같은 if 문을 추가하는 방법이 있나요 :popover rotation

if in portrait CGRect 
    use size S1 location L1 
else if in landscape CGRect 
    use size S2 location L2 

내 코드 :

UIPopoverController* popover = [[UIPopoverController alloc] initWithContentViewController:TweetFeed]; 
[popover setDelegate:self]; 
[popover presentPopoverFromRect:CGRectMake(401, 401, 220, 300) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES]; 
[popover setPopoverContentSize:CGSizeMake(320, 150)]; 
UIPopoverController 애플의 문서는이 문제를 해결

답변

0

: 사용자가 장치 동안 회전하면

을 popover가 보이면 Popover Controller는 popover를 숨긴 다음 회전이 끝날 때 다시 표시합니다. popover 컨트롤러는 popover를 적절하게 위치 시키려고 시도하지만, 어떤 경우에는 다시 표시하거나 숨길 수 있습니다. 예를 들어, 막대 단추 항목에서 표시 될 때 팝업 제어기는 막대 단추 항목의 위치 변경을 설명하기 위해 팝업 창의 위치 (잠재적으로 크기)를 자동으로 조정합니다. 그러나 회전 중에 막대 단추 항목을 제거하거나보기의 대상 사각형에서 팝업을 제시 한 경우, Popover 컨트롤러는 Popover 위치를 변경하려고 시도하지 않습니다. 이러한 경우 수동으로 팝업을 숨기거나 적절한 위치에서 다시 제시해야합니다. popover를 표시하는 데 사용한보기 컨트롤러의 didRotateFromInterfaceOrientation : 메서드에서이 작업을 수행 할 수 있습니다.

관련 문제