无法指定类型' MyClass'的值类型为' MFMailComposeViewControllerDelegate!'

时间:2015-04-07 16:44:48

标签: ios swift delegates mfmailcomposeviewcontroller

我正尝试在iOS中以下列方式发送电子邮件:

var picker = MFMailComposeViewController()
picker.mailComposeDelegate = self
picker.setSubject("Mic Data")

var messageBody = NSMutableString()

for var index = 0; index<array.count; index++ {
    messageBody.appendString(String(format: "%@\n", arguments: [array.objectAtIndex(index) as! String]))
}

picker.setMessageBody(messageBody as String, isHTML: false)

presentViewController(picker, animated: true, completion: nil)

但我在第picker.mailComposeDelegate = self行上收到错误。但它应该工作。我以这种方式class MainTableViewController: UITableViewController, MFMessageComposeViewControllerDelegate设置了委托,并使用了委托方法:

func messageComposeViewController(controller: MFMessageComposeViewController!, didFinishWithResult result: MessageComposeResult) {
    self.dismissViewControllerAnimated(true, completion: nil)
}

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您已将MFMessageComposeViewControllerDelegate添加到您的班级而不是MFMailComposeViewControllerDelegate。容易犯错误。