2016-05-16 9 views
2

ich bin sehr neu in der App in xcode machen, und ich habe ein kleines Problem bei der Herstellung meiner App getroffen. Also was ich versuche zu tun ist, ich möchte eine Seite mit mehreren Textfeldern, dass, wenn Sie eine Taste drücken, alle Informationen aus den Textfeldern als eine Mail gesendet werden. ich habe alles funktioniert, bis auf eine Sache. Wenn die E-Mail gesendet wird, befinden sich alle Informationen in einer Zeile und ich möchte, dass die Informationen aus jedem Textfeld in der Mail in getrennten Zeilen stehen. Ich freue mich über jede Hilfe, und Entschuldigung für etwaige Rechtschreibfehler, ich bin aus Dänemark. :)Mailformular aus mehreren Textfeldern gemacht

Code:

@IBOutlet var text3: UITextField! 
@IBOutlet var text2: UITextField! 
@IBOutlet var text1: UITextField! 

    @IBAction func sendEmail(sender: AnyObject) {  let mailComposeViewController = configuredMailComposeViewController() 
    if MFMailComposeViewController.canSendMail() { 
    self.presentViewController(mailComposeViewController, animated: true, completion: nil) 
    } else { 
    self.showSendMailErrorAlert() 
    } 
} 
func configuredMailComposeViewController() -> MFMailComposeViewController { 
    let mailComposerVC = MFMailComposeViewController() 
    mailComposerVC.mailComposeDelegate = self // Extremely important to set the --mailComposeDelegate-- property, NOT the --delegate-- property 
    let messageBody = text1.text!+text2.text!+text3.text! 
    mailComposerVC.setToRecipients(["[email protected]"]) 
    mailComposerVC.setSubject("New Dumpster") 
    mailComposerVC.setMessageBody(messageBody, 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 
func mailComposeController(controller: MFMailComposeViewController!, didFinishWithResult result: MFMailComposeResult, error: NSError!) { 
    controller.dismissViewControllerAnimated(true, completion: nil) 
} 

Bilder:

input page (picture)

mail page (picture)

+2

'lass messageBody = text1.text! + Text2.text! + Text3text!', Füge sie einfach an, füge ein "\ n" zwischen ihnen hinzu. – Larme

+0

so sollte es sein: text1.text! \ N + text2.text! \ N + text3.text! oder? –

+0

danke @Larme du bist der Mann! : D –

Antwort

0

Alles, was Sie brauchen, ist

let messageBody = text1.text!+"\n"+text2.text!+"\n"+text3.text! 

Genau das, was Larme gesagt hat :)

+0

Vielen Dank, es hat natürlich funktioniert! : D –

Verwandte Themen