Как установить кнопку не кликабельную во время анимации на Android?

Как сделать кнопку не clickable во время выполнения translate.animate . Я попробовал с button.setclickable(false) и button.setEnabled(false) оба dont работали для меня.

Вот мой код:

 b2.setOnClickListener(new OnClickListener() { public void onClick(View v) { if(i%2==0) { //b2.setClickable( false ); // Toast toast1 = Toast.makeText(getBaseContext(), "Success", 1); // toast1.show(); if(i==0) { //b2.setOnClickListener(null); b2.setEnabled(false); //b2.setClickable(false); int modifierY; modifierY=-70; Animation translateAnimation=new TranslateAnimation(0, 0, 0, modifierY); translateAnimation.setDuration(600); translateAnimation.setFillEnabled(true); MyAnimationListener listener=new MyAnimationListener(b2, modifierY,SimpleViewPagerforAndroidActivity.this); translateAnimation.setAnimationListener(listener); // b2.setOnClickListener(null); Animation translateAnimation1=new TranslateAnimation(0, 0, 0,0 ); translateAnimation1.setDuration(1000); translateAnimation1.setFillEnabled(true); MyAnimationListener listener1=new MyAnimationListener(main, 0,SimpleViewPagerforAndroidActivity.this); translateAnimation1.setAnimationListener(listener1); main.setVisibility(RelativeLayout.VISIBLE); /* long time =AnimationUtils.currentAnimationTimeMillis(); main.invalidate(); b2.invalidate(); translateAnimation.setStartTime(time); translateAnimation1.setStartTime(time);*/ main.startAnimation(translateAnimation1); b2.startAnimation(translateAnimation); i++; // b2.setOnClickListener(this); } else { //b2.setOnClickListener(null); b2.setEnabled(false); //b2.setClickable(false); int modifierY; modifierY=-70; Animation translateAnimation=new TranslateAnimation(0, 0, 0, modifierY); translateAnimation.setDuration(1000); translateAnimation.setFillEnabled(true); MyAnimationListener listener=new MyAnimationListener(b2, modifierY,SimpleViewPagerforAndroidActivity.this); translateAnimation.setAnimationListener(listener); Animation translateAnimation1=new TranslateAnimation(0, 0, 0,-150 ); translateAnimation1.setDuration(600); translateAnimation1.setFillEnabled(true); MyAnimationListener listener1=new MyAnimationListener(main, -150,SimpleViewPagerforAndroidActivity.this); translateAnimation1.setAnimationListener(listener1); main.setVisibility(RelativeLayout.VISIBLE); /* long time =AnimationUtils.currentAnimationTimeMillis(); main.invalidate(); b2.invalidate(); translateAnimation.setStartTime(time); translateAnimation1.setStartTime(time);*/ main.startAnimation(translateAnimation1); b2.startAnimation(translateAnimation); // b2.setOnClickListener(this); i++; } } else { //b2.setOnClickListener(null); b2.setEnabled(false); //b2.setClickable(false); Animation translateAnimation=new TranslateAnimation(0, 0, 0,150 ); translateAnimation.setDuration(1000); translateAnimation.setFillEnabled(true); MyAnimationListener listener=new MyAnimationListener(main, 150,SimpleViewPagerforAndroidActivity.this); translateAnimation.setAnimationListener(listener); Animation translateAnimation1=new TranslateAnimation(0, 0, 0,70 ); translateAnimation1.setDuration(600); translateAnimation1.setFillEnabled(true); MyAnimationListener listener1=new MyAnimationListener(b2, 70,SimpleViewPagerforAndroidActivity.this); translateAnimation1.setAnimationListener(listener1); /* long time =AnimationUtils.currentAnimationTimeMillis(); main.invalidate(); b2.invalidate(); translateAnimation.setStartTime(time); translateAnimation1.setStartTime(time); main.startAnimation(translateAnimation1); b2.startAnimation(translateAnimation);*/ b2.startAnimation(translateAnimation1); main.startAnimation(translateAnimation); i++; //b2.setOnClickListener(this); } } }); 

Нажмите кнопку « hasEnd , щелкните ли анимацию или нет, используя свойство hasEnd , проверьте код ниже:

 if (!(animation.hasEnded()) { button.setClickable(false); } else{ button.setClickable(true); } 

Я использую button.setEnabled(false) чтобы отключить событие Touch.

Сначала сделайте выбор кнопки. Тогда все будет работать.

Button.setSelected (истина);

Intereting Posts
Как определить dimens.xml для каждого размера экрана в Android? Android-браузер и браузер не удаляют файлы cookie сеансов на перезагрузке устройства Tablayout с пользовательским представлением Broken на 23.4.0 design lib Ошибка , когда я пытался обновить приложение Добавить «Просмотреть больше» в конце текстового просмотра после трех строк Изменить выбор в ListView с оранжевого на зеленый Android – OnDateChangedListener – как вы это устанавливаете? У меня возникли проблемы с добавлением OpenCV в новый Android-проект Проблема с компоновкой пользовательского интерфейса TabHost Сбой из-за Integer.parseInt Специальная цифровая клавиатура Android Как активировать DeviceAdmin, когда приложение запускается в Android? Android-Studio (или IDEA в целом) рефакторирует несколько наборов источников Android Facebook SDK 4.X, как получить адрес электронной почты и токен доступа Facebook, чтобы передать его веб-службе Android webview cookie возвращает null