我需要修改现有项目。在这个项目中有几个(很多)地方,应用程序会在其中发送一封包含预设文本的电子邮件。使用的功能是
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:emailString]];
这显然会打开 iOS 邮件,准备发送邮件。现在我需要在邮件正文中包含链接。是否可以在所有这些地方不切换到 MFMailComposeViewController 来做到这一点?如何?
我需要修改现有项目。在这个项目中有几个(很多)地方,应用程序会在其中发送一封包含预设文本的电子邮件。使用的功能是
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:emailString]];
这显然会打开 iOS 邮件,准备发送邮件。现在我需要在邮件正文中包含链接。是否可以在所有这些地方不切换到 MFMailComposeViewController 来做到这一点?如何?
这很简单。每个 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];
body
简短的回答是,是的,您可以通过向URL(即mailto:john@apple.com?body=This%20goes%20to%20body
)添加参数来预先填充消息的正文。但请注意,字符串必须正确转义,您可以在 NSString 的帮助下轻松完成stringByAddingPercentEscapesUsingEncoding:
我假设正文中看起来像 URL 的任何 URL 都将被 Mail 应用程序本身转换为链接 - 不确定,测试一下。