簡體   English   中英

在iOS 8中旋轉后MFMailComposeViewController和MFMessageComposeViewController的邊界錯誤

[英]MFMailComposeViewController and MFMessageComposeViewController have wrong bounds after rotation in iOS 8

我的應用程序大多只使用人像模式。 但是,當顯示MFMailComposeViewControllerMFMessageComposeViewController它可以旋轉到橫向。 在iOS 8仍然可以旋轉之前,這種方法一直很好,但是它們的邊界似乎遵循錯誤的方向。

我的應用程序處於縱向模式,並顯示了其中一個控制器。 將手機旋轉到橫向時,會得到以下結果:

MFMailComposeViewController

在此處輸入圖片說明

MFMessageComposeViewController

在此處輸入圖片說明

編輯:這是介紹作曲家的代碼:

MFMailComposeViewController *mailComposeViewController = [[MFMailComposeViewController alloc] init];
mailComposeViewController.mailComposeDelegate = self;
[mailComposeViewController setSubject:subject];
[mailComposeViewController setMessageBody:body isHTML:NO];

[self presentViewController:mailComposeViewController animated:YES completion:^{
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
}];

編輯:如果我檢查視圖調試器中的視圖,我可以看到,盡管UIWindow已旋轉為橫向顯示,但沒有底層視圖具有。 這包括UITransitionViewUILayoutContainerView

這不是解決方案,而是分享我的經驗。 我還構建了僅遵循縱向方向的應用程序。 但是,當我嘗試以任何設備方向打開MFMailComposeViewControllerMFMessageComposeViewController時,它僅以縱向顯示。

我只有在看到您的問題時才檢查此內容。 我以與您相同的方式介紹它們。 我正在共享我已使用的目標設置和.plist條目。 請查看其中是否有幫助。

目標常規設置

.plist條目

iOS8存在一些與輪換無法正常運行有關的問題。 值得先檢查一下。 它是在應用程序委托中的簡單一行編輯。

UISplitViewController旋轉iOS8無法按預期工作

現在將在iOS 8中棄用諸如willRotateToInterfaceOrientation:duration:didRotateToInterfaceOrientation:類的方法,並將其替換為viewWillTransitionToSize:withTransitionCoordinator: 根據您處理應用程序輪換的方式,您可能必須對代碼進行更改以適應新方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM