我需要修改現有的項目。在這個項目中,有幾個(很多)應用程序發送一封電子郵件,其中包含預設文本。使用的功能是電子郵件正文內的鏈接
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:emailString]];
這明顯打開iOS郵件,準備發送消息。 現在我需要在消息正文中包含鏈接。是否有可能在所有這些地方切換到MFMailComposeViewController?怎麼樣?
我需要修改現有的項目。在這個項目中,有幾個(很多)應用程序發送一封電子郵件,其中包含預設文本。使用的功能是電子郵件正文內的鏈接
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:emailString]];
這明顯打開iOS郵件,準備發送消息。 現在我需要在消息正文中包含鏈接。是否有可能在所有這些地方切換到MFMailComposeViewController?怎麼樣?
簡短的回答,是的,你可以通過添加body
參數的URL(即mailto:[email protected]?body=This%20goes%20to%20body
)預填充消息的主體。請注意,該字符串必須妥善轉義,你可以輕鬆地在NSString的幫助下做到這一點stringByAddingPercentEscapesUsingEncoding:
我假設正文中的任何URL看起來像一個URL將通過郵件應用程序本身轉換爲鏈接 - 不確定,測試一下。
這很簡單。 每個HTML標籤應該附加在URL開始雙引號前使用前斜線和結束
例子:
NSString *bodyText [email protected]"<html>";
bodyText = [bodyText stringByAppendingString:@"<head>"];
bodyText = [bodyText stringByAppendingString:@"</head>"];
bodyText = [bodyText stringByAppendingString:@"<body>"];
bodyText = [bodyText stringByAppendingString:@"<a href=\"http://www.devaski.com\">My blog"];
bodyText = [bodyText stringByAppendingString:@"</a>"];
[mailComposer setMessageBody:bodyText isHTML:YES];
感謝您的答覆。事實上的確如此,我的意思是我設法將人體預先填充,並且諸如www.mysite.com之類的任何地址都通過Mail轉換爲鏈接。我需要實現的是有一個鏈接,例如「訪問我們的網站」。使用MFMailComposeViewController,你可以通過html來做到這一點。 – user236739 2012-02-07 17:23:28
是的,這是你必須用HTML處理的東西,如果答案有幫助,將其標記爲已接受。 – 2012-02-07 23:01:49
這比我想象的要容易得多,實際上嵌入到emailString中的HTML只是起作用。周圍發佈了一些錯誤的信息,指出openURL方式不允許使用html。不管怎樣,謝謝你。 – user236739 2012-02-08 09:38:44