Jac*_*nig 2 ios swift mfmailcomposeviewcontroller
我意识到这个问题已被不明确地问到了,但我一直无法找到问题的答案.
我有一个带静态单元格的UITableViewController.其中一个单元格用于打开Mail Composer视图,并在用户发送或取消电子邮件后通过委托将其关闭.我的问题是没有调用委托方法.这是我的代码:
class SideMenuTableViewController: UITableViewController, MFMailComposeViewControllerDelegate, UINavigationControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
mailCVP.delegate = self
mailCVP = configureMailComposeVC()
if MFMailComposeViewController.canSendMail() {
self.presentViewController(mailCVP, animated: true, completion: nil)
} else { //..// }
}
func configureMailComposeVC() -> MFMailComposeViewController {
let mailComposerVC = MFMailComposeViewController()
mailComposerVC.setToRecipients(["momentosdetora@gmail.com"])
mailComposerVC.setSubject("Contacto Momentos de Tora")
return mailComposerVC
}
func mailComposeController(controller: MFMailComposeViewController, didFinishWithResult result: MFMailComposeResult, error: NSError?) {
controller.dismissViewControllerAnimated(true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以发现我可能做错的事吗?
谢谢.
MFMailComposeViewController是它的子类UINavigationController,它已具有delegate处理导航更改的属性.
MFMailComposeViewController还有另一个叫做mailComposeDelegate的房产,这是你要找的房产.
此外,您应该在设置委托之前创建控制器.
小智 5
确保您使用
controller.mailComposeDelegate = self
Run Code Online (Sandbox Code Playgroud)
不是这个
controller.delegate = self
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1196 次 |
| 最近记录: |