电子邮件正文中的链接

时间:2012-02-07 16:18:43

标签: ios xcode email mfmailcomposeviewcontroller openurl

我需要修改现有项目。在这个项目中,有几个(很多)地方应用程序发送包含预设文本的电子邮件。使用的功能是

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

这显然会打开iOS Mail,准备发送消息。 现在我需要在消息正文中包含链接。是否可以在没有切换到所有位置的MFMailComposeViewController的情况下执行此操作?怎么样?

2 个答案:

答案 0 :(得分:4)

非常简单。 每个html标签都应该附加,在url开头和结尾双引号之前使用前斜线 示例:

    NSString *bodyText =@"<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];

答案 1 :(得分:0)

查看此文档 - https://developer.apple.com/library/ios/#featuredarticles/iPhoneURLScheme_Reference/Articles/MailLinks.html#//apple_ref/doc/uid/TP40007892-SW1

简短的回答,是的,您可以通过向网址添加body参数(即mailto:john@apple.com?body=This%20goes%20to%20body)来预先填充邮件正文。但请注意,必须正确转义字符串,您可以在NSString的stringByAddingPercentEscapesUsingEncoding:

的帮助下轻松完成

我假设身体中看起来像URL的任何URL都将被Mail应用程序本身转换为链接 - 不确定,测试它。