Ver mensagens sem resposta | Ver tópicos ativos Hoje é 18 Nov 2017, 00:12



Responder Tópico  [ 2 Mensagens ] 
 [DICA] .gif No Android 
Autor Mensagem
Android Guru
Android Guru
Avatar de usuário

Data de registro: 29 Ago 2011, 16:18
Mensagens: 782
Localização: Blumenau - SC
Mensagem [DICA] .gif No Android
O android nativamente não tem recurso de adicionar na tag ImageView um .gif animado.
Para criar um .gif teremos que ter todas as imagens da animação disponíveis para serem adicionadas em um xml que gerenciará o tempo e a ordem da animação:

1º passo: Adicionar suas imagens que farão parte da animação na pasta (res/drawable)

2º passo: Adicionando as imagens no xml:
crie um arquivo e dê um nome que você quiser (respeitando as convenções de pastas que o android estabelece), no meu caso dei o nome de (splash_animation.xml) na pasta (res/drawable):
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
    <item
        android:drawable="@drawable/anim_um"
        android:duration="150"/>

    <item
        android:drawable="@drawable/anim_dois"
        android:duration="150"/>

    <item
        android:drawable="@drawable/amin_tres"
        android:duration="150"/>

    <item
        android:drawable="@drawable/anim_quatro"
        android:duration="150"/>

    <item
        android:drawable="@drawable/anim_cinco"
        android:duration="150"/>

    <item
        android:drawable="@drawable/anim_seis"
        android:duration="150"/>

    <item
        android:drawable="@drawable/anim_sete"
        android:duration="150"/>

 
</animation-list>


onde android:oneshot=”false” significa que ficará em loop a animação, ou seja, toda vez que acabar as imagens, começará novamente a animação.
cada tag corresponde a uma imagem onde:
android:drawable=”@drawable/anim_dois” é o caminho da imagem e
android:duration=”150″ é o tempo de duração da imagem em milissegundos

agora basta criar um layout na pasta (res/layout) e adicionar um ImageView,
exemplo:
dei o nome do arquivo xml como (activity_init.xml)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/rlInit"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

 
    <ImageView
        android:id="@+id/imageSplash"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true" />

 
</RelativeLayout>


Na sua activity, adicione o código de animação:
import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.widget.ImageView;
 
public class InitActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_init);
 
        ImageView img = (ImageView) findViewById(R.id.imageSplash);
        img.setBackgroundResource(R.drawable.splash_animation);
 
        AnimationDrawable frameAnimation = (AnimationDrawable) img
                .getBackground();
 
        frameAnimation.start();
    }
 
}


OBVIAMENTE, NÃO ESQUEÇA DE ADICIONAR SUA ACTIVITY NO AndroidManifest.xml.

Quando executado, sua animação será mostrada da seguinte forma:
Imagem

Nesse caso, a imagem está estática pois não é um gif e sim um print, mas a animação ocorreria no centro da tela.

_________________
Sanou a sua dúvida ou resolveu o seu problema?
1º -> Compartilhe a solução postando-a, as pessoas com a mesma dúvida ou problema agradecem.
2º -> Adicione ao título do tópico "[RESOLVIDO]" para que os moderadores identifiquem que o seu tópico foi realmente resolvido.


_____
WordPress: http://tecmaicon.wordpress.com/
github: https://github.com/maiconn
LinkedIn: http://www.linkedin.com/pub/maicon-mach ... /64/a07/20


17 Abr 2013, 18:07
Perfil WWW
What is a Activity?
What is a Activity?

Data de registro: 09 Nov 2015, 14:29
Mensagens: 18
Mensagem Re: [DICA] .gif No Android
Ótimo tutorial.
Uma outra solução é adicionar o Gif dentro de um WebView e editar o html dele para ajustar o Gif dentro do XML.

http://stackoverflow.com/questions/4825 ... ng-webview


28 Nov 2015, 03:39
Perfil
Mostrar mensagens anteriores:  Organizar por  
Responder Tópico   [ 2 Mensagens ] 

Quem está online

Usuários vendo este fórum: adolfo, Alan Unger, albinoneto, Alexsandro Tirloni, amarildolacerdas, andrelom, arilsonm, ariostorecco, arquivo51, Ask Jeeves, baudamix, betofigu, Biggs Darklighter, BloggerCaOS, brunogh, brunomalka, btleandro, btminzon, cariabs8, carlos rodrigues, cehills, Chewbacca, Christiane, Cleiton, Clone Trooper, dannieltec, DAVINCE, Delão, dikiloco, dmd, dreyer, e-azuos, edson dias de gusmao, edsonel, eduzortea, estratecnologia, fabiano_eletro, Gabriel Laet, gamito, geeks, Guilherme, guilhermepilotti, gutodias, italoraony, itsN, jeanbr07, jgfelix, Jless@, jorgecardoso, leo, leofernandesmo, levita, lfalcao, lucasmadeira, lucastgomes, MarceloMC, Marco Magoo, maurofjr, mcurtis, Michel, neviim, nina.rm, nino, nivaldo, nrsf, Obi-Wan Kenobi, On_7, Orivalde, otium, Patrick, pomarolli, pxcx, reginaldofdias, renanpl, ricardo_listadelphi, ricardzanella, rmendes, RodReis, rodrigosalfer, ROGÉRIO RODRIGUES, Rubens Prates, rubens_olv, shazaum, skcratch, srsilveira, suportecr, tavares767, tChAnDy, the_hulk_knifer, thienne, thosjanas, tonylock, Topeca, VIEIRIX, W3 [Sitesearch], washington, wilson.slima, Wookiees, YaCy, Yoda e 1 visitante


Você não pode criar novos tópicos neste fórum
Você não pode responder tópicos neste fórum
Você não pode editar suas mensagens neste fórum
Você não pode excluir suas mensagens neste fórum
Você não pode enviar anexos neste fórum

Procurar por:
cron

© 2007 - 2016 Portal Android - Comunidade de Desenvolvedores Android

Estamos no Linkedin    Siga-nos no twitter


Powered by phpBB - Hospedado por Bemobi