2017-02-02 11 views
0


Я создал игру в AndroidStudio, где вы можете перемещаться вправо и влево с помощью кнопок. Теперь я хотел бы добавить анимацию. У меня есть этот образ: image
Как изменить анимацию, когда я нажимаю левую кнопку, а затем останавливаю ее, когда не касаюсь кнопки?
Есть ли руководство? Спасибо за все.Sprite animation Android Studio

ответ

0

Прежде всего, вам нужно создать xml и поместить изображения. У вас есть 6 кадров в спрайте, вы должны разрезать его на 6 изображений. Создайте xml (например, run_animation.xml) и сориентируйте изображения там. Например, как это:

<animation-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:drawable="@drawable/run_0001" android:duration="50"/> 
    <item android:drawable="@drawable/run_0002" android:duration="50"/> 
    <item android:drawable="@drawable/run_0003" android:duration="50"/> 
    <item android:drawable="@drawable/run_0004" android:duration="50"/> 
    <item android:drawable="@drawable/run_0005" android:duration="50"/> 
    <item android:drawable="@drawable/run_0006" android:duration="50"/> 
</animation-list> 

Если вы не хотите, чтобы петли анимации, вы можете использовать это в XML: android:oneshot="true"

Например:

<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="true">

Java:

runAnimation.setImageResource(R.drawable.run_animation); 
AnimationDrawable idleAnimation = (AnimationDrawable)runAnimation.getDrawable(); 
idleAnimation.start(); 

Для запуска анимации с использованием ab utton, поместите Java-код выше в прослушиватель кнопки. Например:

btnRight.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     // run animation 
     runAnimation.setImageResource(R.drawable.run_animation); 
     AnimationDrawable idleAnimation = (AnimationDrawable)runAnimation.getDrawable(); 
     idleAnimation.start(); 
    } 
});