iOS 5从应用程序发送电子邮件的最简单方法

时间:2012-03-15 02:48:33

标签: iphone ios email nsstring

我只是尝试使用此代码发送电子邮件,它似乎有效:

NSString* urlEmail = [NSString stringWithString: @"mailto:foo@example.com?cc=bar@example.com&subject=test%20from%20me!&body=this%20is%20a%20test!"];

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: urlEmail]];

唯一的问题是,是否有一个函数可以用来自动转义普通NSString中的所有内容,所以我不必像这样手动写出来?如果没有,我如何使用stringWithFormat而不与字符串中已有的%符号冲突?我基本上希望能够动态地追加,主题,身体等。

2 个答案:

答案 0 :(得分:9)

使用MFMailComposeViewController:

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setToRecipients:recipients];
[picker setSubject:subject];
[picker setMessageBody:body isHTML:YES];
[self presentModalViewController:picker animated:YES];
[picker release];

答案 1 :(得分:1)

根据https://stackoverflow.com/a/917630/535632,你可以这样逃避:

NSString *urlStr = [urlEmail stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];