簡體   English   中英

如何在App中將圖像從ImageView附加到電子郵件

[英]How to attach image from ImageView to E-mail within an App

得到了以下內容。 我制作了一個簡單的IOS / Swift應用程序,需要將圖像發送到特定的電子郵件。 我已經開始工作了:

  1. 拍照片
  2. 從現有照片中抓取圖片
  3. 圖像顯示在圖像視圖中
  4. 發送按鈕可以引導我發送已配置的郵件:收件人,主題和郵件正文。

我需要工作的是如何在按“發送”時從“圖像視圖”中添加所選圖像以添加到電子郵件中。

以下代碼是我使用的代碼:

用於拍攝和選擇圖像:

@IBOutlet var imageView: UIImageView!

@IBOutlet weak var PicLabel: UILabel!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

@IBAction func FotoKnop(sender: AnyObject) {
}

@IBAction func chooseImageFromPhotoLibrary() {
    let picker = UIImagePickerController()

    picker.delegate = self
    picker.sourceType = .PhotoLibrary

    presentViewController(picker, animated: true, completion: nil)
}
@IBAction func chooseFromCamera() {
    let picker = UIImagePickerController()

    picker.delegate = self
    picker.sourceType = .Camera

    presentViewController(picker, animated: true, completion: nil)
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
    imageView.image = image
    self.dismissViewControllerAnimated(true, completion: nil)

}

對於電子郵件

    @IBAction func sendEmailButtonTapped(sender: AnyObject) {
        let mailComposeViewController = configuredMailComposeViewController()
        if MFMailComposeViewController.canSendMail() {
            self.presentViewController(mailComposeViewController, animated: true, completion: nil)

        } else {
        }
    }

    func configuredMailComposeViewController() -> MFMailComposeViewController {
        let mailComposerVC = MFMailComposeViewController()
        mailComposerVC.mailComposeDelegate = self // Extremely important to set the --mailComposeDelegate-- property, NOT the --delegate-- property
        mailComposerVC.setToRecipients(["jvanhattem@it-serve.nl"])
        mailComposerVC.setSubject("Mail vanuit PicMail")
        mailComposerVC.setMessageBody("Onderstaand de doorgestuurde informatie", isHTML:
            false)

        return mailComposerVC


    }


    func showSendMailErrorAlert() {
        let sendMailErrorAlert = UIAlertView(title: "Could Not Send Email", message: "Your device could not send e-mail.  Please check e-mail configuration and try again.", delegate: self, cancelButtonTitle: "OK")
        sendMailErrorAlert.show()
    }

    // MARK: MFMailComposeViewControllerDelegate Method
    func mailComposeController(controller: MFMailComposeViewController!, didFinishWithResult result: MFMailComposeResult, error: NSError!) {
        controller.dismissViewControllerAnimated(true, completion: nil)
    }
}

任何想法都很棒!

func configuredMailComposeViewController() -> MFMailComposeViewController {
    let mailComposerVC = MFMailComposeViewController()
    mailComposerVC.mailComposeDelegate = self // Extremely important to set the --mailComposeDelegate-- property, NOT the --delegate-- property
    mailComposerVC.setToRecipients(["jvanhattem@it-serve.nl"])
    mailComposerVC.setSubject("Mail vanuit PicMail")
    mailComposerVC.setMessageBody("Onderstaand de doorgestuurde informatie", isHTML:
        false)

    //Add Image as Attachment
    if let image = imageView.image {
       let data = UIImageJPEGRepresentation(image, 1.0)
        mailComposerVC.addAttachmentData(data!, mimeType: "image/jpg", fileName: "image")
    }

    return mailComposerVC
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM