2012-03-15 41 views
1

我只是嘗試使用此代碼來發送電子郵件,它似乎工作發送電子郵件5最簡單的方法:的iOS從一個應用程序

NSString* urlEmail = [NSString stringWithString: @"mailto:[email protected][email protected]&subject=test%20from%20me!&body=this%20is%20a%20test!"]; 

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

唯一的問題是,有沒有我可以使用自動跳脫功能一切正常NSString中,所以我不必手動寫出這樣的?如果不是,我怎樣才能使用stringWithFormat而不與已經在字符串中的%符號發生衝突?我基本上希望能夠動態追加到主題,主體等。

回答

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]; 
+0

這種方法真的更可靠 – 2012-03-15 03:09:12

+0

我需要添加什麼才能訪問MFMailComposeViewController? – gonzobrains 2012-03-15 15:24:42

+1

添加消息UI.framework – nebulabox 2012-03-22 03:27:04

1

https://stackoverflow.com/a/917630/535632,你可以逃脫這樣的:

NSString *urlStr = [urlEmail stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
+0

另外,這個答案(同樣的問題)顯示的附加字符處理:HTTP://計算器。 com/a/4140183/535632 – 2012-03-15 03:04:49

相關問題