为了统一我从我的某个iOS应用程序共享信息的方式,我正在尝试使用UIActivityViewController。到目前为止一切都很好,除了一个细节。我不能干净地处理带有HTML内容的邮件的情况。我读了几篇关于这个主题的帖子,但没什么令人满意的。
问题是,我如何干净地处理带有HTML内容的邮件的情况?
在这种情况下放弃使用UIActivityViewController并回到传统的MFMailComposeViewController会不会更好?
答案 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
。希望它有所帮助!