Просто пытаюсь разрешить пользователю отправлять электронные письма.В тот момент, когда нажимается кнопка «контакт», он выводит меня на черный экран вместо отображения mailComposers.
Отладчик отвечает:
2018-05-14 11:10:59.465952-0400 Приложение [2333: 757177] Не удалось установить (keyPath) определяемое пользователем проверенное свойство для (UIButton): [setValue: forUndefinedKey:]: этот класс не соответствует значению ключа, соответствующему кодированию для ключа keyPath.
Однако это происходит только при перемещении меню слева направо с помощью функции SWReveal.При удалении кода снизу все остальные функции работают правильно.Это только при использовании кода снизу, который дает мне черный экран в тот момент, когда нажимается «кнопка контакта».
import Foundation
import UIKit
import MessageUI
class SendEmailVC: MFMailComposeViewController, MFMailComposeViewControllerDelegate
{
@IBAction func Send_Tapped(_ sender: Any)
{
if MFMailComposeViewController.canSendMail()
{
contact()
let mailComposeViewController = configureMailController() //FIXED √
self.present(mailComposeViewController, animated: true, completion: nil)
}
else
{
showMailError()
}
}
func configureMailController() -> MFMailComposeViewController
{
let mailComposerVC = MFMailComposeViewController()
mailComposerVC.mailComposeDelegate = self
mailComposerVC.setToRecipients(["testing@gmail.com"])
mailComposerVC.setSubject("Hello")
mailComposerVC.setMessageBody("How are you doing?", isHTML: false)
return mailComposerVC
}
/*
* DON'T EDIT THE CODE BELOW.
*/
func showMailError()
{
let sendMailErrorAlert = UIAlertController(title: "Email failed to send", message: "Your device fail to send the email", preferredStyle: .alert)
let dismiss = UIAlertAction(title: "Dale", style: .default, handler: nil)
sendMailErrorAlert.addAction(dismiss)
self.present(sendMailErrorAlert, animated: true, completion: nil)
}
func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?)
{
controller.dismiss(animated: true, completion: nil)
}
}