2011-05-13 3 views
0

내 앱에는 상태 표시 줄이없고 ui 요소가 전체 화면으로 표시됩니다. (0, 0) - (480, 320)이다. 문제는 presentModalViewController : 및 dismissModalViewControllerAnimated :를 사용하여 MFMessageComposeViewController를 표시 한 후 모든 UI 요소가 아래로 미끄러졌습니다.UI 요소가 MFMessageComposeViewController를 표시 한 후 슬라이드합니다.

ui 요소가 놓이는 프레임의 테두리와 경계를 확인했지만 둘 다 올바른 값의 원점 (0,0) 크기 (480,320)이지만 window.rootViewController.view의 프레임과 경계는 크기 (480,300).

이 문제를 어떻게 피할 수 있습니까?

답변

0

사용이이 문제를 해결하면 뷰 컨트롤러의 viewDidLoad 방법에 다음 줄을 추가 할 수 있습니다

 
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result 
{ 

    switch (result) { 
     case MessageComposeResultCancelled: 

      break; 
     case MessageComposeResultFailed: 

      break; 
     case MessageComposeResultSent: 

      break; 
     default: 
      break; 
    } 

    [self dismissModalViewControllerAnimated:YES]; 
    self.view.frame=CGRectMake(0, 0, 320, 480); 
} 

+0

감사합니다,하지만입니다 수동으로 프레임을 변경하지 않고이 문제를 해결할 수있는 방법이 있습니까? –

0

대신 메시지 컨트롤러를 기각 한 후 프레임을 재설정 :

self.wantsFullScreenLayout = YES; 
관련 문제