繁体   English   中英

使用UIActivityViewController在电子邮件中发送链接

[英]Send a link in an email using UIActivityViewController

如何使用UIActivityViewController发送包含快速消息和链接的电子邮件? 我尝试过使用NSURL:

NSURL *url = [NSURL URLWithString:@"http://google.com/"];

还有一个NSString:

// String with Hyperlink syntax
NSString *stringURLHyperlink = @"<a href=\"http://google.com/">Google</a>";

// Plain text link out of desperation.
NSString *stringURLPlain = @"http://google.com/"; 

没有使用自定义UIActivity。 NSString / NSURL作为activityItems发送:

NSArray *activityItems = @[link];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];

感谢大家。

编辑1:

我道歉,我应该让我的问题更清楚。 如何使用UIActivityViewController在电子邮件中发送消息和可点击链接?

这似乎在iOS 7中运行良好:

[[UIActivityViewController alloc] initWithActivityItems:@[@"<html><body><b>This is a bold string</b><br\\>Check out this amazing site: <a href='http://apple.com'>Apple</a></body></html>"] applicationActivities:nil];

如果您共享符合UIActivityItemSource协议的对象,那么您将能够指定电子邮件的主题应该是什么!

tl; dr:在NSString中使用基本的html来包装所需的电子邮件内容

在我的情况下,只要从我需要分享的链接中检索到图像,我就不需要发布照片(就像你在Facebook时间轴上发布链接一样,它会自动从该链接抓取图片,并且图片成为链接)。 为了做到这一点,我发现如果我只发布一个URL它不起作用。 您必须发布一些初始文本然后发布URL,并通过在activityItems数组中按顺序放置对象来实现。

这是我的工作代码:

NSArray * activityItems = @[[NSString stringWithFormat:@"Some initial text."], [NSURL URLWithString:@"http://www.google.com"]];
NSArray * applicationActivities = nil;
NSArray * excludeActivities = @[UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypePostToWeibo, UIActivityTypePrint, UIActivityTypeMessage];

UIActivityViewController * activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities];
activityController.excludedActivityTypes = excludeActivities;

[self presentViewController:activityController animated:YES completion:nil]; 

我还注意到,如果沿这些对象发布照片,它将不会从链接中检索任何图像。

我希望这有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM