Один файл анимации на 12кнопок

260
04 февраля 2018, 01:07

Делаю приложение на android.Возникла проблема с корректным отображением анимации для 12ти кнопок. Создал файл анимации в res/anim/bounce.xml В файле java имеются 12 кнопок,и к каждой кнопке добавлена эта анимация,но при нажатии на несколько кнопок,анимация как будто "залипает",а именно,если анимация не остановилась на первой кнопке,нажимая на вторую,первая запускает анимацию с начала вместе со второй,если нажимаем третью,последующие две запускают анимацию заново и т.д.Вопрос:как сделать,что бы анимация не "залипала" при последующих нажатиях на следующие кнопки и каждая анимация на кнопке была как отдельная анимация? Небольшой кусок из кода

Animation myAnim;
Button[] but = new Button[12];
@Override
public void onCreate(Bundle savedInstanceState) 
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
for (int b=0;b<15;b++){
r[0]=getResources().getIdentifier("but"+b,"id",getPackageName());
but[b]=(Button) findViewById(r[0]);
but[b].setBackgroundResource(R.drawable.but2);
but[b].setOnTouchListener(list);}
myAnim = AnimationUtils.loadAnimation(this, R.anim.bounce);}}
private View.OnTouchListener list = new View.OnTouchListener() {
public boolean onTouch(View view, MotionEvent event){
if(event.getAction() == MotionEvent.ACTION_DOWN){
switch (view.getId()) {
case R.id.but0:
but[0].startAnimation(myAnim);
break;
case R.id.but1:
but[1].startAnimation(myAnim);
break;
case R.id.but2:
but[2].startAnimation(myAnim);
break;
case R.id.but3:
but[3].startAnimation(myAnim);
break;
case R.id.but4:
but[4].startAnimation(myAnim);
break;
case R.id.but5:
but[5].startAnimation(myAnim);
break;
case R.id.but6:
but[6].startAnimation(myAnim);
break;
case R.id.but7:
but[7].startAnimation(myAnim);
break;
case R.id.but8:
but[8].startAnimation(myAnim);
break;
case R.id.but9:
but[9].startAnimation(myAnim);
break;
case R.id.but10:
but[10].startAnimation(myAnim);
break;
case R.id.but11:
but[11].startAnimation(myAnim);
break;
default:
break;
}}
return false;}
};  
READ ALSO
Тернарный оператор вместо конструкции if-else (2)

Тернарный оператор вместо конструкции if-else (2)

Задался вот этим вопросом(там тоже самое ввиде ответа удалю)

295
Write me a function that receives three integer inputs [требует правки]

Write me a function that receives three integer inputs [требует правки]

Write me a function that receives three integer inputs for the lengths of the sides of a triangle and returns one of four values to determine the triangle type (1=scalene, 2=isosceles, 3=equilateral, 4=error)

201
Как определить тип дженерик аргумента в java?

Как определить тип дженерик аргумента в java?

Можно ли собственно получить тип N наподобиеgetClass()

229