【Android Developers Training】 73. 布局变化的动画

注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。

原文链接:http://developer.android.com/training/animation/layout.html


一个布局变更动画是一个预加载的动画,当每次你对布局配置进行修改以后,系统就会运行这个动画。所有你需要做的就是在布局中设置一个属性,来告诉Android系统来执行这个布局变更动画,然后系统默认动画会对其进行执行。

Tip:

如果你希望用自定义的布局变更动画,创建一个LayoutTransition对象,然后然后将它通过setLayoutTransition()方法配置给布局。

下面是向一个列表添加项目时的默认动画:

布局变更动画

如果你希望略过这部分内容直接看代码样例,可以直接下载样例代码,然后选择淡入淡出动画的例子。下面的文件是实现代码:

  • src/LayoutChangesActivity.java
  • layout/activity_layout_changes.xml
  • menu/activity_layout_changes.xml

一). 创建布局

在你的activity的布局XML文件中,将你希望启用动画的布局的android:animateLayoutChanges属性设置为true

<LinearLayout android:id="@+id/container"
    android:animateLayoutChanges="true"
    ...
/>

二). 添加、更新、或者删除布局中的项目

现在你要做的就是在布局中添加、更新或删除项目,该项目会自动执行系统默认的动画:

private ViewGroup mContainerView;
...
private void addItem() {
    View newView;
    ...
    mContainerView.addView(newView, 0);
}
原文地址:https://www.cnblogs.com/jdneo/p/3578636.html