Вы находитесь на странице: 1из 5

29/06/2015

CriandoanimaesnoAndroid|blog.caelum.com.br

Busca...

Criando animaes no Android


Postado dia 30/04/2014 por Felipe Torres em Mobile

Nos cursos de Android da Caelum, comum encontrarmos alunos que queiram


incorporar efeitos visuais aplicao. Porm, essa necessidade mais visvel ao
se programar jogos, onde bastante comum o uso de animaes, seja dos
personagens ou do cenrio. Existem vrias tcnicas para se criar animaes,
dentre as quais est aquela que a mais antiga e intuitiva: a animao quadro a
quadro.
Ao criar uma animao quadro a quadro, colocamos uma sequncia de imagens
estticas que, ao serem exibidas numa certa velocidade produz o efeito de
movimento. Como o Android j possui suporte para vrios tipos de animaes,
vamos ver como criar uma animao quadro a quadro, que chamamos no
Android de Animation Drawable.

http://blog.caelum.com.br/criandoanimacoesnoandroid/

1/5

29/06/2015

CriandoanimaesnoAndroid|blog.caelum.com.br

Primeiramente, vamos colocar o png das nossas imagens na pasta

res/drawable. nessa pasta que o Android vai procurar as imagens


usadas numa aplicao. Com os png na pasta, vamos dizer para o
Android em qual ordem e por quanto tempo as imagens devero ser
exibidas na nossa animao. Para isso, na pasta res/drawable vamos
criar um xml chamado animacao.xml e utilizar uma tag chamada
animationlist:
<animationlistxmlns:android="http://schemas.android.com/apk/res/android
android:oneshot="false">
<itemandroid:drawable="@drawable/imagem1"android:duration="100"/>
<itemandroid:drawable="@drawable/imagem2"android:duration="100"/>
<itemandroid:drawable="@drawable/imagem3"android:duration="100"/>
<itemandroid:drawable="@drawable/imagem4"android:duration="100"/>
</animationlist>
Perceba que cada item dessa lista contm a imagem, que est na pasta

res/drawable, e a durao do tempo que essa imagem ser exibida. Alm disso, o
atributo android:oneshot diz se essa animao deve ficar em loop infinito ou
parar assim que o ltimo quadro for exibido. No nosso caso, deixaremos em loop
infinito ao setar esse atributo como false.
Nossa animao est pronta, agora precisamos atribu-la a um componente de

view da nossa aplicao.


Vamos criar um ImageView que conter nossa animao e cham-lo de animacao
com o uso do atributo android:id:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:id="@+id/animacao"
/>
</LinearLayout>
Com esse ImageView criado, basta setar nosso xml de animao nele:
ImageViewimageView=findViewById(R.id.animacao);
imageView.setBackgroundResource(R.drawable.animacao);

AnimationDrawableanimation=(AnimationDrawable)imageView.getBackground();
http://blog.caelum.com.br/criandoanimacoesnoandroid/

2/5

29/06/2015

CriandoanimaesnoAndroid|blog.caelum.com.br

animation.start();
Com isso, podemos ver nosso ImageView com uma animao.
Alm de animaes quadro a quadro, podemos alterar a posio de um elemento
de View dando a iluso de movimento. Para isso, podemos usar a classe
TranslateAnimation.
Vamos deslocar nossa ImageView para dar a iluso de movimento:
Animationdeslocamento=newTranslateAnimation(0,1000,0,0);
deslocamento.setDuration(3000);
imageView.startAnimation(deslocamento);
Note que o TranslateAnimation recebe quatro inteiros: eles significam,
respectivamente, as diferenas entre as posies iniciais e finais no eixo x e y.
No nosso caso, estamos fazendo um movimento horizontal (por isso os dois
ultimos valores so zeros) da esquerda para a direita comeando onde o
ImageView estiver posicionado (por isso, o primeiro valor zero), e indo at a
posio 1000 da minha tela.
Aps definir as posies do nosso movimento, podemos definir a sua durao
com o mtodo setDuration().
Alm do Animation Drawable, o Android oferece vrios outros tipos de
animaes que so bastante teis para jogos ou at mesmo para aplicativos
comuns.
E se quiser saber mais sobre o desenvolvimento Android e Mobile em geral no
deixe de visitar a MobileConf RJ 2014!

Compartilhe

Facebook

http://blog.caelum.com.br/criandoanimacoesnoandroid/

Twitter

3/5

29/06/2015

CriandoanimaesnoAndroid|blog.caelum.com.br

Felipe Torres
MAIS SOBRE O AUTOR

5 COMENTRIOS

Lucas Martins
30/04/2014 at 16:23 #

Exclente guia para ns, amantes de games!

Mateus
06/05/2014 at 15:35 #

Muito bom, direto ao ponto e sem rodeios. Parabns.

Brito
03/08/2014 at 18:33 #

Gostaria muito de uma apostila mobile para android

Wilamis Micael
27/09/2014 at 17:39 #

Como eu crio um boneco com animao? O que vc me recomendaria???

http://blog.caelum.com.br/criandoanimacoesnoandroid/

4/5

29/06/2015

CriandoanimaesnoAndroid|blog.caelum.com.br

DEIXE UMA RESPOSTA

Nome (Obrigatrio)

Email (Obrigatrio)

Site

Comentrio

Enviar comentrio

BLOG.CAELUM.COM.BR 2015.

http://blog.caelum.com.br/criandoanimacoesnoandroid/

5/5

Вам также может понравиться