2017-08-16 2 views
0

J'applique une application iOS qui télécharge des images sur un serveur Web. L'application fournit une extension qui permet de télécharger des applications comme Twitter, messages, etc.comment télécharger des images gif dans swift pour iOS

Lorsque l'image est sélectionnée par l'utilisateur, il peut être présenté par le itemProvider soit comme UIImage, Data ou URL. Pour gérer cela, je crée un objet UIImage à partir de ce que le itemProvider fournit et j'envoie ce nouvel objet UIImage à la fonction de téléchargement.

Cette dernière (la fonction de chargement) utilise Alamofire pour télécharger l'image et donc, nécessite d'avoir un objet Data, que j'Obtenue en utilisant UIImageJPEGRepresentation ou UIImagePNGRepresentation de l'objet UIImage. Cela fonctionne pour la plupart des images, mais dans le cas de gif, ce n'est pas le cas. Le fichier .gif perd sa propriété d'animation et seule une image statique est téléchargée.

Donc ma question est de savoir comment avoir un objet Data de l'objet UIImage qui conserve les propriétés .gif (animation) du fichier original?

Merci beaucoup pour l'aide que vous pouvez fournir.

Répondre

0

Voici comment faire, assez simple.

myData = Data(contentsOf: url) 

Mais XCode afin de rattraper l'erreur qui donne:

do{ 
    try myData = Data(contentsOf: url) 
}catch let error{ 
    print ("Error \(error)") 
}