Post

Replies

Boosts

Views

Activity

Need Assistance with sending attachments for MFMessageComposeViewController
I am coding an app where the user has the ability to send text fields and images from the app using SMS when they press "Submit Now". The following code has enabled everything to work flawlessly if there are EXACTLY three images being sent. We want to enable the user to send one photo, two photos, or even no photos (up to and including three). Right now the app will crash if any less than three photos are included. Here is the error message: language "Unexpectedly found nil while unwrapping an Optional value" Here is my section of code for the view controller responsible for sending the fields and images via SMS once the user presses "Submit Now": language @IBAction func SubmitNow(_ sender: Any) {                  print("Submission Button Has Been Pressed")                      if (MFMessageComposeViewController.canSendText()) && (MFMessageComposeViewController.canSendAttachments()) {                                          let controller = MFMessageComposeViewController()                                          controller.body = "Name: \(nameField.text!) \n\nAddress: \(addressField.text!) \n\nEmail: \(emailField.text!) \n\nTime of Day: \(notesField.text!) \n\nNotes: \(TimeOfDay.text!)"                                          controller.recipients = ["our phone number"]                                          controller.messageComposeDelegate = self                          let image1 = FreshImage1.image!             let dataImage1 = image1.jpegData(compressionQuality: 100)             guard dataImage1 != nil else { return }                          controller.addAttachmentData(dataImage1!, typeIdentifier: "image/jpeg", filename: "Image1.jpeg")                          self.present(controller, animated: true, completion: nil)                                       let image2 = FreshImage2.image!             let dataImage2 = image2.jpegData(compressionQuality: 100)             guard dataImage2 != nil else { return }                          controller.addAttachmentData(dataImage2!, typeIdentifier: "image/jpeg", filename: "Image2.jpeg")                          self.present(controller, animated: true, completion: nil)                                       let image3 = FreshImage3.image!             let dataImage3 = image3.jpegData(compressionQuality: 100)             guard dataImage3 != nil else { return }                                  controller.addAttachmentData(dataImage3!, typeIdentifier: "image/jpeg", filename: "Image3.jpeg")                          self.present(controller, animated: true, completion: nil)                                                       }              } Any help that can be provided to fix this error would be appreciated. Thank you!
5
0
755
Mar ’21