Android:为多个按钮制作淡出动画更加流畅

时间:2013-05-06 10:00:05

标签: android animation fadeout smooth

是否可以顺利地为多个按钮制作淡出动画?

创建了fadeout.xml @ res / anim

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
    android:fromAlpha="1.0"
    android:toAlpha="0.0"
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:duration="1500"
    android:repeatCount="infinite" />
</set>

用它来设置动画

Animation fadeout = AnimationUtils.loadAnimation(this, R.anim.fadeout);

单击

后将动画应用于某些按钮
public void click (View v){
     button1.startAnimation(fadeout);
     button2.startAnimation(fadeout);
     button3.startAnimation(fadeout);
     button4.startAnimation(fadeout);
     button5.startAnimation(fadeout);
     button6.startAnimation(fadeout);
     button7.startAnimation(fadeout);
     button8.startAnimation(fadeout);
     button9.startAnimation(fadeout);
     button10.startAnimation(fadeout);
     button11.startAnimation(fadeout);
     button12.startAnimation(fadeout);
     button13.startAnimation(fadeout);
     button14.startAnimation(fadeout);
     button15.startAnimation(fadeout);
}

申请3-5个按钮时不是问题,但是当应用于上面的许多按钮时,它会变得迟钝。

那么有没有想要将这个动画应用于许多按钮而没有延迟?

因为我需要将这个动画应用到许多按钮上,大约有162个按钮。

我正在使用Galaxy Nexus进行测试。

1 个答案:

答案 0 :(得分:4)

不必单独为每个按钮应用动画;相反,将它们全部粘贴在另一个布局(即GridLayout)中,然后将动画应用于该布局。