LayoutTransition:当 Layout 内的 View 发生 Visibility 变化后,可以对 Layout 内的其他 View 产生对应的变化。
使用 android:animateLayoutChanges="true" 开启 LayoutTransition 功能。


  • LayoutTransition.APPEARING
    • 当一个 View 变为 Visible 时,对这个元素应用动画
  • LayoutTransition.CHANGE_APPEARING
    • 当一个 View 变为 Visible 时,因系统要重新布局有一些元素需要移动,这些要移动的元素应用动画
  • LayoutTransition.DISAPPEARING
    • 当一个 View 变为 Gone 时,对这个元素应用动画
  • LayoutTransition.CHANGE_DISAPPEARING
    • 当一个 View 变为 Gone 时,因系统要重新布局有一些元素需要移动,这些要移动的元素应用动画.
设置Transition
1
2
LayoutTransition transitioner = new LayoutTransition();
container.setLayoutTransition(transitioner);
获取动画
1
transitioner.getAnimator(LayoutTransition.APPEARING);
自定义动画
1
transition.setAnimator(LayoutTransition.APPEARING, animator);
获取transition动画默认时长
1
transition.getDuration(LayoutTransition.CHANGE_DISAPPEARING)

ApiDemo > com.example.android.apis.animation.LayoutAnimations