MFMailComposeVC

Я использую MFMailComposeViewController чтобы позволить пользователю отправлять электронную почту в моем приложении. после создания и отображения этого системного почтового композитора с presentModalViewController : я ждал вызова делегата:

 - (void) mailComposeController: (MFMailComposeViewController *)controller didFinishWithResult: (MFMailComposeResult)result error: (NSError *)error 

в этом делетете (который также является единственным делегатом, которого я могу найти), я закрываю mailComposerView.

Все прекрасно работает, за исключением случаев, когда пользователь вводит какой-то контент, но вместо «отправить» выбирает «отменить», появится системный лист действий с параметрами «Сохранить», «Удалить» и «Отменить». если пользователь выбирает «Сохранить», что означает сохранение черновика почты, до вызова метода делегата будет довольно длинный интервал времени. таким образом, мой пользовательский интерфейс выглядит как висит.

Еще одна вещь, которую я наблюдал, заключается в том, что если вы положите свое приложение в backgorud во время этой зависания, приложение будет разбито на возобновление из-за сторожевого пса. (Не возобновлено вовремя). Этот крах также находится в приложении для фото iOS, если следовать тем же самым шагам. Кто-нибудь знает, как я могу избежать этого? или, может быть, любое другое решение, которое я могу отправить по электронной почте в приложении, а не используя MFMailComposeViewController ?

One Solution collect form web for “MFMailComposeVC”

У меня также были некоторые проблемы с MFMailComposeViewController и поскольку он используется только для обратной связи, я, наконец, решил отправить пользователя в приложение Mail, используя

 NSString *recipientsAndSubject = [NSString stringWithFormat: @"mailto:%@?subject=%@", recipient, subject]; NSString *email = [NSString stringWithFormat:@"%@&body=%@", recipientsAndSubject, body]; email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]]; 

Моя проблема заключалась в том, что сразу после использования MFMailComposeViewController некоторые прокрутки в моем VC стали вялыми. Это произошло, только если вы щелкнули что-нибудь в MFMailComposeVC. Если вы только что удалили черновик, прокрутка была в порядке …

  • NSJSONSerialization возвращает ноль
  • Получение уведомления об использовании устройства iOS в фоновом режиме
  • iOS несбалансированные вызовы applicationWillResignActive: и applicationDidBecomeActive:
  • Командная строка Xcode 5: неверная цель развертывания «3.0.0» для архитектуры «arm64»
  • Пользовательский баннер объявлений
  • Несовместимое целое число с преобразованием указателя? что?
  • SoundManager2 с iOS - не воспроизводит звук в событии onClick
  • iOS потоковое видео и хранение на устройстве впоследствии
  • Как получить информацию о свободной памяти и запущенных процессах в одобренном App Store приложении? (Да, есть один!)
  • Как реализовать UIButton, состоящий из изображения левой стороны и текста справа
  • Может ли звук удаленного уведомления воспроизводиться на iPhone в паре с Apple Watch?
  • Interesting Posts

    Как подключиться к устройству после отключения в Core Bluetooth

    UIActivityViewController в Swift Crashes на iPad

    Вызов раскадровки из UIViewcontroller

    Parse Unpin не удаляет объект из локального хранилища данных

    Я не могу показать значок своего приложения в iTunes

    iOS – ошибка записи заголовка файла для хранения структуры каталогов в рамках

    iOS 7 – Ограничение ландшафтной ориентации только в одном контроллере представления

    Каков официальный способ проверить, способно ли мое устройство кодировать изображения в формате HEIC?

    Макрос препроцессора для целевого интерфейса Builder недоступен для OS X?

    Код кода C ++ Delphi XE6 в iOS

    Изменение свойства $ (AppIdentifierPrefix) вручную?

    Различные иконки приложений на основе идентификатора пакета в фазах сборки-> Run Script

    Как добавить теневой эффект для панели UINavigation?

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

    Показать экран при первом запуске только в iOS

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