2012-02-08 3 views
1

может кто-нибудь сказать мне, почему эта анимация не начинается? Я попытался поставить код в слушателе onAnimationStart, и он никогда не вызывается! ошибок нет, этого просто никогда не бывает. Я часами смотрел на это!анимация не начало !! (android)

Animation bRegisterAnimation = fadeView(1,0,0); 
bRegisterAnimation.setAnimationListener(new AnimationListener() { 
    public void onAnimationStart(Animation arg0) {} 
    public void onAnimationRepeat(Animation arg0) {} 
    public void onAnimationEnd(Animation arg0) { 
     bRegister.clearAnimation(); 
     bRegister.setVisibility(View.INVISIBLE); 
    } 
}); 
bRegister.setAnimation(bRegisterAnimation); 

и здесь функция fadeView:

public Animation fadeView(float startA, float endA, int delay) { 
    Animation animation = new AlphaAnimation(startA,endA); 
    animation.setDuration(1000); 
    animation.setStartOffset(delay); 
    return animation; 
} 

спасибо!

ответ

3

Я думаю bRegister ваше мнение, по которому вы хотите, чтобы ваша анимация работать. ЕСЛИ это так, вы правильно настроили анимацию с этим представлением, используя bRegister.setAnimation (bRegisterAnimation);

но вы не запустили анимацию, используя startAnimation(). Попробуйте это однажды

+0

работает как шарм, спасибо! – user1118042

1

У меня был подобный опыт при попытке реализовать анимацию на моем устройстве Android, которое я использовал для своей сестры. Я пытался получить анимацию, чтобы работать над ней целый день, пока я, наконец, не сдался. Несколько дней спустя я понял, что все анимации были отключены в настройках. _ - lol, чтобы не тратить время на то, как я, возможно, было бы разумно сначала проверить ваши настройки.

+0

Я даже не могу объяснить, насколько я благодарен за то, что вы опубликовали это, почти потерял рассудок. Спасибо, угууууу !!!! – StackPWRequirmentsAreCrazy

4

Необходимо позвонить по телефону bRegister.startAnimation(bRegisterAnimation). Кроме того, вам не нужно звонить setAnimation(). Если вы пытаетесь сделать простую анимацию выцветанию, вы можете попробовать использовать вместо этого:

bRegister.startAnimation(AnimationUtils.loadAnimation(
        getBaseContext(), android.R.anim.fade_in)); 
+1

спасибо, что напомнил мне, что Android R class создал анимацию;) – sandalone

Смежные вопросы