Se você tem como alvo o iOS7 e já tem a imagem dividida em frames, você pode usar animatedImageNamed:duration:
.
Digamos que você esteja animando um spinner. Copie todos os seus quadros no projeto e nomeie-os da seguinte maneira:
spinner-1.png
spinner-2.png
spinner-3.png
- etc ,
Em seguida, crie a imagem por meio de:
[UIImage animatedImageNamed:@"spinner-" duration:1.0f];
Dos documentos :
Este método carrega uma série de arquivos anexando uma série de números ao nome do arquivo base fornecido no parâmetro name. Por exemplo, se o parâmetro de nome tivesse 'imagem' como seu conteúdo, este método tentaria carregar imagens de arquivos com os nomes 'imagem0', 'imagem1' e assim por diante até 'imagem1024'. Todas as imagens incluídas na imagem animada devem compartilhar o mesmo tamanho e escala.
Eu recomendaria usar o seguinte código, é muito mais leve e compatível com projetos ARC e não ARC, e adiciona uma categoria simples em UIImageView:
https://github.com/mayoff/uiimage-from-animated-gif/
fonte
FLAnimatedImage é um mecanismo GIF animado de código aberto de alto desempenho para iOS:
É um componente testado que escrevi para alimentar todos os GIFs no Flipboard .
fonte
Outra alternativa é usar um
UIWebView
para exibir o GIF animado. Se o GIF for obtido de um servidor, isso cuidará da busca. Também funciona com GIFs locais.fonte
A partir do iOS 11, a estrutura de fotos permite adicionar a reprodução de Gifs animados.
O aplicativo de amostra pode ser baixado aquiMais informações sobre a reprodução de Gifs animados (a partir de 13:35 min): https://developer.apple.com/videos/play/wwdc2017/505/
fonte
fonte
Você pode usar o SwiftGif neste link
Uso:
fonte