Android: сделайте анимацию плавного затухания для нескольких кнопок более плавной

Можно ли сделать анимацию затухания для нескольких кнопок плавно?

Создан 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 для тестирования.


person user2341387    schedule 06.05.2013    source источник
comment
С какой стати вам нужно применять его отдельно к ~160 кнопкам? Почему бы не применить его к представлению контейнера?   -  person Cornholio    schedule 06.05.2013
comment
Итак, мне нужно выбрать все кнопки и завернуть в контейнер? Тогда какой контейнер? Макет сетки? Линейный макет?   -  person user2341387    schedule 06.05.2013
comment
Это зависит от вас. С таким количеством кнопок, я полагаю, вы добавляете их динамически?   -  person Cornholio    schedule 06.05.2013
comment
Я предполагаю, что GridLayout - лучшее решение для вас.   -  person Cornholio    schedule 06.05.2013
comment
Спасибо, теперь работает гладко   -  person user2341387    schedule 06.05.2013


Ответы (1)


Нет необходимости применять анимацию к каждой кнопке по отдельности; Вместо этого вставьте их все в другой макет (например, GridLayout) и примените к нему анимацию.

person Cornholio    schedule 06.05.2013