gpt4 book ai didi

ios - MFMailComposeViewController 不发送电子邮件或关闭

转载 作者:行者123 更新时间:2023-12-01 19:38:37 27 4
gpt4 key购买 nike

我正在使用 MFMailComposeViewController在具有以下代码的 View Controller 中:

if !MFMailComposeViewController.canSendMail() {
return
}
let mailComposeViewController = MFMailComposeViewController()
mailComposeViewController.mailComposeDelegate = self
present(mailComposeViewController, animated: true)

和:
extension MyViewController : MFMailComposeViewControllerDelegate {
private func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {
controller.dismiss(animated: true, completion: nil)
}
}
MFMailComposeViewController按预期显示,但具有以下行为:
  • 取消按钮要么什么都不做(如果消息没有被编辑),要么显示“删除草稿”/“保存草稿”操作表,其中没有一个选项会关闭 MFMailComposeViewController
  • 发送按钮不做任何事情,无论它是禁用(没有设置收件人)还是启用(设置收件人)
  • 可以通过向下滑动 View 来关闭 View (新的 iOS 13 模态行为)

  • 这是 Xcode 11.2、iOS 13.2、Swift 4。

    我怎样才能解决这个问题?

    最佳答案

    在这段代码中

    extension MyViewController : MFMailComposeViewControllerDelegate {
    private func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {
    controller.dismiss(animated: true, completion: nil)
    }
    }

    删除关键字 private .它对 Cocoa 隐藏了该方法,因此它永远不会被调用。

    关于ios - MFMailComposeViewController 不发送电子邮件或关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58739787/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com