2013-10-08 3 views
0

Я использую AnimatorSet NineOldAndroid «s на ViewКак сделать анимированный просмотр уходить?

и когда я хочу, чтобы избавиться от анимации, и сделать вид ушел - ничего не происходит

как я делаю вид уйти?

public void showAnimation(boolean show) { 
    if (show) { 
     if (mTarget.getVisibility() != View.VISIBLE) { 
      // play sound 

      mTarget.setVisibility(View.VISIBLE); 
      pauseAnimation = false; 
      // start animation 
      initTargetAnimation(); 
     } 
    } else { 

     pauseAnimation = true; //All of this block gets executed in the debugger, but none of it actually take effect 
     if (mTarget.getAnimation() != null) { 
      mTarget.getAnimation().cancel(); 
      mTarget.clearAnimation(); 
     } 
     mTarget.setVisibility(View.GONE); 
    } 



} 

    private void initTargetAnimation() { 

    final AnimatorSet set = new AnimatorSet(); 

    // init animation properties 
    set.playTogether(ObjectAnimator.ofFloat(mTarget, "scaleX", RELEVANT_ANIMATION_SEQUENCE), ObjectAnimator.ofFloat(mTarget, "scaleY", RELEVANT_ANIMATION_SEQUENCE)); 

    // add animation listener 
    set.setDuration(1500).addListener(new Animator.AnimatorListener() { 
     @Override 
     public void onAnimationStart(Animator animation) { 

     } 

     @Override 
     public void onAnimationEnd(Animator animation) { 
      // RESTART ANIMATION 
      if (!pauseAnimation) { 
       initTargetAnimation(); // TODO fix 
      } 
     } 

     @Override 
     public void onAnimationCancel(Animator animation) { 

     } 

     @Override 
     public void onAnimationRepeat(Animator animation) { 

     } 
    }); 

    // start animation 
    set.start(); 

} 
+0

@Керри, если вы собираетесь редактировать мое сообщение - возможно, вы можете ответить на мой вопрос? –

ответ

0

После того, как вы установили видимость на вашем View mTarget, попробуйте вызвать invalidate() на нем. Это предполагает, что вы вызываете это из основного потока, иначе это postinvalidate().

+0

Мне так жаль, что это помогло, но оно все еще не исчезает :( –

+0

Можете ли вы разместить свой полный код? – Kerry

+0

код, который я отправил, мой полный код не соответствует mTarget = (View) fragment.findViewById (R.id.target) –

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