Sobre o projeto
android-gif-drawable é uma biblioteca Android de código aberto que fornece classes de Views e Drawables para exibir GIFs animados. Ela inclui GIFLib via JNI para renderizar quadros, o que é mais eficiente do que usar WebView ou classes Movie.
A biblioteca oferece várias classes de View prontas para uso: GifImageView, GifImageButton e GifTextView, que podem ser usadas diretamente em layouts XML ou definidas programaticamente. Quando um drawable atribuído a essas views é um arquivo GIF, ele é automaticamente reconhecido como GifDrawable e animado. Se o drawable não for um GIF, as views se comportam como ImageView ou ImageButton padrão.
GifDrawable pode ser construído a partir de várias fontes, incluindo arquivos de assets, recursos, URIs, arrays de bytes, FileDescriptors, caminhos de arquivos, Files, AssetFileDescriptors, InputStreams e ByteBuffers. A biblioteca assume a propriedade dos fluxos de entrada e os fecha automaticamente.
O controle de animação é fornecido por métodos como stop(), start(), isRunning(), reset(), setSpeed(float), seekTo(int), getDuration() e getCurrentPosition(). GifDrawable implementa as interfaces Animatable e MediaPlayerControl, permitindo integração com MediaController padrão para controles de reprodução e exibição de progresso.
A biblioteca também expõe metadados de GIF, incluindo contagem de loops, número de quadros, texto de comentário, contagem de bytes de quadros, contagem de bytes de alocação e contagem de bytes da fonte de entrada. Um mecanismo MultiCallback permite que uma única instância de GifDrawable anime várias Views simultaneamente.
Os requisitos incluem Android 4.2+ (nível de API 17+), com renderização acelerada por hardware para GifTextureView e OpenGL ES 2.0+ para GifTexImage2D. A compilação a partir do código-fonte requer o Android NDK. A biblioteca está disponível no Maven Central e suporta configurações Gradle, Maven e Eclipse. Ela é licenciada sob a Licença MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.