2013-04-16 11 views
10

Ich möchte kopieren GIF-Bilder in die Zwischenablage kopieren, um Benutzer, dass die GIF-Bilder von der Anwendung auf Mails einfügen können, etc ...Kopieren GIF-Bilder mit UIPasteboard durch den Code in die Zwischenablage kopieren [iOS]

ich versucht habe, : -

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://fc05.deviantart.net/fs37/f/2008/283/a/b/KaleidoCoils_animated__gif_by_1389AD.gif"]]; 
UIPasteboard *pasteBoard=[UIPasteboard generalPasteboard]; 
[pasteBoard setImage:[UIImage imageWithData:data]]; 

aber es kopiert im Format von .png und nicht .gif. Wie kann ich .gif-Bild mit seiner Animation in die Zwischenablage kopieren, die in anderen Anwendungen als Einfügeoption verwendet werden kann?

Die Anwendung https://itunes.apple.com/us/app/animated-3d-emoji+emoticons/id429348043?mt=8 tut dies bereits.

Bitte helfen Sie mir.

Vielen Dank im Voraus

Antwort

22

fand ich Lösung für gleiche: -

Dies ist mein Code, die mir geholfen haben: -

@import MobileCoreServices; 

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://fc05.deviantart.net/fs37/f/2008/283/a/b/KaleidoCoils_animated__gif_by_1389AD.gif"]]; 
UIPasteboard *pasteBoard=[UIPasteboard generalPasteboard]; 
[pasteBoard setData:data forPasteboardType:(__bridge NSString *)kUTTypeGIF]; 

@"com.compuserve.gif" kommt von http://www.escape.gr/manuals/qdrop/UTI.html

hoffe, das hilft jemand ... :)

+0

Danke, das ist hilfreich! – CodePlumber

+0

HI @ P.J diese Lösung funktioniert gut. Die Konvertierung der URL in die NSData dauert jedoch länger. Haben Sie eine Idee, wie Sie es steigern können? – Ramakrishna