MFMailComposeViewController не редактируется в iOS 8 Xcode 6

Для отображения листа электронной почты я использую следующий код. Появляется лист, но я не могу редактировать тему, тело. Я даже не могу нажать кнопки отмены или отправки. Вот моя реализация:

class PeopleListTableViewController: UITableViewController,SWTableViewCellDelegate,UINavigationControllerDelegate,MFMailComposeViewControllerDelegate, NSXMLParserDelegate { func showEmailSheet(person :Person) { if MFMailComposeViewController.canSendMail() { let mailViewController = MFMailComposeViewController() mailViewController.mailComposeDelegate = self mailViewController.setToRecipients([person.email!]) self.presentViewController(mailViewController, animated: true, completion: nil) } } 

Что я делаю не так?

3 Solutions collect form web for “MFMailComposeViewController не редактируется в iOS 8 Xcode 6”

Вот рабочий код из одного из моих проектов. Обязательно работайте с формой на устройстве iOS, а не в симуляторе.

 import UIKit import MessageUI class ViewController: UIViewController, MFMailComposeViewControllerDelegate { @IBAction func launchEmail(sender: AnyObject) { var emailTitle = "Feedback" var messageBody = "Feature request or bug report?" var toRecipents = ["youraddress@gmail.com"] var mc: MFMailComposeViewController = MFMailComposeViewController() mc.mailComposeDelegate = self mc.setSubject(emailTitle) mc.setMessageBody(messageBody, isHTML: false) mc.setToRecipients(toRecipents) self.presentViewController(mc, animated: true, completion: nil) } func mailComposeController(controller:MFMailComposeViewController, didFinishWithResult result:MFMailComposeResult, error:NSError) { switch result.value { case MFMailComposeResultCancelled.value: println("Mail cancelled") case MFMailComposeResultSaved.value: println("Mail saved") case MFMailComposeResultSent.value: println("Mail sent") case MFMailComposeResultFailed.value: println("Mail sent failure: %@", [error.localizedDescription]) default: break } self.dismissViewControllerAnimated(true, completion: nil) } } 

У меня такая же проблема в Xcode6 и iOS8.

Однако я заметил, что это проблема эмулятора. Следующий код работает на iOS8, но только на устройстве (а не на эмуляторе)!

 MFMailComposeViewController *composer = [[MFMailComposeViewController alloc] init]; if([MFMailComposeViewController canSendMail]) { composer.mailComposeDelegate = self; messageContent=[NSString stringWithFormat:@"Bla bla"]; [composer setSubject:@"The subject"]; [composer setMessageBody:messageContent isHTML:NO]; [composer setToRecipients:[NSArray arrayWithObject:[NSString stringWithFormat:@"Vincent@xxxxx.com"]]]; [composer setCcRecipients:nil]; [composer setBccRecipients:nil]; [composer setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; [self presentViewController:composer animated:YES completion:nil]; } 

Я пришел с таким простым решением:

 //outlet & btns @IBOutlet weak var forgotEmail: UITextField! @IBAction func resetPW(sender: AnyObject) { // send email var mailer = MFMailComposeViewController() mailer.mailComposeDelegate = self mailer.setSubject("Forgot Password") mailer.setToRecipients(["admin@someMail.com"]) presentViewController(mailer, animated:true, completion: nil) } 

PS: «setToRecipients» работает только на реальном устройстве, а не в симуляторе!

  • Xcode 6.1 - ошибка консоли экземпляров структуры
  • Как передать значения из контроллера Pop Up View в контроллер предыдущего просмотра?
  • Разрешить пользователям фоновую музыку в swift 2.0
  • iOS 8 запускает приложение навсегда или отключает экран
  • Получить индекс объекта из коллекции
  • Установка значения ползунка для установки SeekToTime в AVPlayer
  • Не удается вызвать startRecordingToOutputFileURL более одного раза на примере AVCaptureMovieFileOutput
  • MPNowPlayingInfoCenter nowPlayingInfo не отображается во время воспроизведения видео в AVPlayer
  • Класс Swift «MyClass» не имеет члена. Именованный «My_Var»
  • Кто-то сумел реализовать логин LinkedIn с Firebase на iOS?
  • Ошибка при реализации второго UICollectionView: не удалось удалить вид вида: UICollectionElementKindCell с идентификатором xxxx - должен регистрироваться
  • Interesting Posts

    Swift 3 – Работа с UnsafePointer <CFDictionary>?

    Скорость рендеринга отдельных пикселей в цикле

    Предварительный просмотр камеры в другом представлении с шириной

    Как заставить UITableView не изменять рамку imageView или изменять размер изображения, чтобы заполнить размер кадра?

    Как отобразить листинговый листок акций iOS 6 с доступными опциями?

    Это приведет к сбою ..? или мы можем отправить сообщение на ноль в Свифт, а также ..?

    Единичное тестирование

    Постоянное отслеживание местоположения пользователя на iOS

    UItableview не обновляет обновленные данные из основных данных

    преобразование ObjC в Swift – UnsafePointer <Void> не конвертируется в тип структуры

    Возможно ли подключение Wi-Fi Direct к устройствам iOS и к устройствам с поддержкой Wi-Fi Direct?

    Должен ли родительский объект Core Data ManagedObjectContext разделить тип параллелизма с дочерним контекстом?

    Переход UIViewController с UIScrollView, достигающим вершины, чтобы инициировать переход

    Удаление задержки задержки при рисовании UIBezierPath плавных линий в Swift

    Инициализатор не переопределяет назначенный инициализатор из своего суперкласса

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.