MFMessageComposeViewController ios7 покрывает строку состояния
Я модернизирую более старую платформу iPad, которая представляет собой splitView с основными и подробными представлениями, управляемыми UINavigationControllers. DetailView отображает серию UIWebView. Когда пользователь касается кнопки электронной почты, приложение программно отображает стандартный лист составителя электронной почты в detailView. Это прекрасно работает на устройстве iOS6. Лист сдвигается вверх вертикально, чтобы закрыть панель навигации и останавливается ниже строки состояния. На устройстве iOS7 лист скользит вверх и вверх по панели навигации и закрывает строку состояния. Ничто из того, что я пробовал, не позволяет листу композитора закрывать строку состояния в iOS7.
Вот код, который является частью класса электронной почты. Делегатом является UIViewController, который вызвал этот метод косвенно через кнопку электронной почты.
-(void)displayComposerSheet {
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.navigationBar.barStyle = UIBarStyleBlackOpaque;
if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
picker.navigationBar.barStyle = UIBarStyleBlackTranslucent;
}
picker.modalPresentationStyle = UIModalPresentationCurrentContext;
picker.modalPresentationCapturesStatusBarAppearance = YES;
picker.mailComposeDelegate = self;
NSString *emailAddress = ruleEmailAddress;
// Set up recipients
NSArray *toRecipients = @[emailAddress];
[picker setToRecipients:toRecipients];
[picker setSubject:ruleNumber];
[picker setMessageBody:ruleText isHTML:YES];
[(UIViewController *)delegate presentViewController:picker animated:YES completion:nil];
}
Спасибо за любые предложения о том, как сохранить лист композитора от покрытия строки состояния на устройствах iOS7.