邮件与HTML内容/ UIActivityViewController

时间:2017-02-27 05:28:00

标签: html ios email swift3 uiactivityviewcontroller

为了统一我从我的某个iOS应用程序共享信息的方式,我正在尝试使用UIActivityViewController。到目前为止一切都很好,除了一个细节。我不能干净地处理带有HTML内容的邮件的情况。我读了几篇关于这个主题的帖子,但没什么令人满意的。

问题是,我如何干净地处理带有HTML内容的邮件的情况?

在这种情况下放弃使用UIActivityViewController并回到传统的MFMailComposeViewController会不会更好?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下内容

NSString *path = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
NSString* html = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

NSArray* dataToShare = @[html];
UIActivityViewController* activityViewController =[[UIActivityViewController alloc] initWithActivityItems:dataToShare applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypeAirDrop];
UIWindow *keyWindow = [[[UIApplication sharedApplication] delegate] window];
[keyWindow addSubview: self.view];
[self presentViewController:activityViewController animated:YES completion:^{}];

您也可以将HTML源写入本地文件,例如my_mail_message.html,然后使用该文件构建NSURL对象,例如[NSURL URLWithString:@"file://my_mail_message.html"],然后使用NSURL 1}} object作为activityItems数组的一个元素,您可以将其输入initWithActivityItems:applicationActivities。希望它有所帮助!