我想展示一个gif,所以我做的是我拆分我的gif并使用此链接在UIImageView的动画中显示它。
http://iphonenativeapp.blogspot.com/2011/03/how-to-show-animation-in-iphoneipad-app.html
现在,我想让用户复制gif并将其粘贴到邮件应用程序中。
如果我使用包含gif的所有分割图像的数组,则将4-5张图像粘贴到邮件应用程序中。
请帮我粘贴gif。谢谢!
答案 0 :(得分:7)
要从similar question复制/粘贴我自己的答案。
NSString *gifPath = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"volleyball.gif"];
NSData *gifData = [[NSData alloc] initWithContentsOfFile:gifPath];
UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
[pasteboard setData:gifData forPasteboardType:@"com.compuserve.gif"];
[gifData release];
编辑刚刚注意到您自己问了这两个类似的问题。
答案 1 :(得分:0)
虽然您可以使用基于HTML的电子邮件 - 例如:
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
NSString *emailBody = @"<p><b>Hello World</b></p>";
[picker setMessageBody:emailBody isHTML:YES];
您无法像在HTML中那样插入内嵌图像。 HTML电子邮件中的内嵌图像使用单独的MIME部分,这些部分通过消息正文中的content-id元素引用。 MFMailComposeViewController
不允许您控制邮件的MIME结构,因此不允许您添加内联引用的内容部分。
将图像数据嵌入到<img>
标签中,因为base64有时会起作用 - 这取决于用于呈现它的电子邮件客户端和浏览器 - 但它不是广泛可移植的。
答案 2 :(得分:0)
FWIW,动画GIF似乎与iOS 6中的新共享表中的电子邮件一起使用,如果用户选择邮件,它将自动在电子邮件中填充gif:
NSString *gifPath = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"volleyball.gif"];
NSData *gifData = [[NSData alloc] initWithContentsOfFile:gifPath];
NSArray *activityItems = [NSArray arrayWithObjects:@"Here is an awesome body for the email.",gifData,nil];
UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
activityController.completionHandler = ^(NSString *activityType, BOOL completed){
// item was shared!
// you can check if it was email (or another type, like facebook or twitter) in the *activityType.
// completed is YES if they actually shared it, if they canceled, completed will be NO.
};
[navigationController presentViewController:activityController animated:YES completion:nil];
答案 3 :(得分:-1)
由于iOS不支持动画GIF格式,我认为不可能在邮件应用程序中复制/粘贴gif。但是,您可以尝试附加gif文件(不是分割图像)&amp;使用MFMailComposeViewController
撰写新电子邮件。如果您在非iOS设备上打开附件,您应该能够看到动画GIF。
HTH,
阿克沙伊