2016-12-08 10 views
1

У меня есть bottomBar, который я хотел бы расширить. Думаю, я знаю, как это сделать с анимацией.Android развернуть анимацию анимации

Но согласно What is the difference between an Animator and an Animation?

Если я использую старые анимации. Тогда кнопки не будут перемещены. Только визуально.

Как я могу достичь этого с помощью Animators.

Что я пытаюсь добиться

enter image description here

Так может кто-то подталкивать меня в правильном направлении.

ответ

1

Это решило мою проблему.

public static ValueAnimator slideAnimator(int start, int end, final View view, int duration) { 
    ValueAnimator animator = ValueAnimator.ofInt(start, end); 
    animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { 
     @Override 
     public void onAnimationUpdate(ValueAnimator valueAnimator) { 
      int val = (Integer) valueAnimator.getAnimatedValue(); 
      ViewGroup.LayoutParams layoutParams = view.getLayoutParams(); 
      layoutParams.height = val; 
      view.setLayoutParams(layoutParams); 
     } 
    }); 
    animator.setDuration(duration); 
    return animator; 
} 

Кредит: Android property animation: how to increase view height?

0

Ну, что может быть сделано с "однострочника":

TransitionManager.beginDelayedTransition(viewGroup); 

ViewGroup.LayoutParams layoutParams = view.getLayoutParams(); 
layoutParams.height = endValue; 
view.invalidate();