首先需要先介绍下LayoutAnimationController:

* 1.LayoutAnimationController用于为一个layout里面的控件,或者是一个ViewGroup

* 里面的控件设置动画效果(即整个布局)

* 2.每一个控件都有相同的动画效果

* 3.这些控件的动画效果在不同的实现显示出来

* 4.LayoutAnimationController可以在xml文件当中设置,也可以在代码中进行设置

本文就针对两种实现LayoutAnimationController的方法分别进行介绍:

一,在XML文件中实现

步骤如下图所示:

下面以一个实例来说明实现的方法:

实现的例子是点击“测试”按钮,有动画形式的view展现出来,截图如下:

具体的实现过程如下:

需要两个动画xml文件:

1.list_item_layout

android:animation="@anim/list_item_alpha"

android:animationOrder="normal"

android:delay="0.8" />

2.list_item_alpha

android:fromAlpha="0.0"

android:toAlpha="1.0"

android:duration="2000"

/>

3.需要在listview中添加如下的说明:

android:layoutAnimation="@anim/list_item_layout"

具体的实现代码如下:

public class LayoutAnimation_Activity extends Activity {

private Button button;

private Button button2;

private ListView listView;

private static final String[] STRINGS={"BruceZhang","Alhpa","Translate","Blanklin","Rotate",

"GreenFrank"};

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_layout_animation_);

button=(Button)findViewById(R.id.button);

button2=(Button)findViewById(R.id.button2);

listView=(ListView)findViewById(R.id.listview);

final ArrayAdapter adapter=new ArrayAdapter(this, R.layout.item_list, STRINGS);

button.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

listView.setAdapter(adapter);

}

});

button2.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

listView.setAdapter(null);

}

});

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.activity_layout_animation_, menu);

return true;

}

}

二,在java代码中实现LayoutAnimationController

实现的步骤如下图:

在本例中用到的代码如下:

Animation animation=AnimationUtils.loadAnimation(LayoutAnimation_Activity.this,

R.anim.list_item_alpha);

LayoutAnimationController laController=new LayoutAnimationController(animation);

laController.setOrder(LayoutAnimationController.ORDER_NORMAL);

listView.setLayoutAnimation(laController);

android添加动画文件,Android开发之图形图像与动画(五)LayoutAnimationController详解相关推荐

  1. qt for android开发百度地图(一步步带图详解)

    qt for android开发百度地图 前言:qt for android开发百度地图,其实找了很多资料,基本上没有,就自己折磨弄了出来,这个过程还是很曲折的,折磨了一两个星期,没有资料,就两个字' ...

  2. Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验

    Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高 ...

  3. Android基础入门教程——8.3.5 Paint API之—— Xfermode与PorterDuff详解(二)

    Android基础入门教程--8.3.5 Paint API之-- Xfermode与PorterDuff详解(二) 标签(空格分隔): Android基础入门教程 本节引言: 上一节,我们学习了Xf ...

  4. 关东升的《iOS实战:图形图像、动画和多媒体卷(Swift版)》上市了

    关东升的<iOS实战:图形图像.动画和多媒体卷(Swift版)>上市了 承蒙广大读者的厚爱我的<iOS实战:图形图像.动画和多媒体卷(Swift版)>京东上市了,欢迎广大读者提 ...

  5. 基于OpenCV+WinForm开发的图形图像渲染控件

    基于OpenCV+WinForm开发的图形图像渲染控件 WinForm版图形图像渲染控件 图像居中渲染 图像放大 图像缩小 绘制图形 点 线 矩形 圆形 旋转矩形 多边形 资源连接 WinForm版图 ...

  6. iOS开发——使用Charles进行https网络抓包详解

    我在前面两篇博客中<网络抓包工具Charles的介绍与使用><iOS开发--使用Charles进行http网络抓包详解>对Charles的http抓包进行了详细的讲解.今天我们 ...

  7. iOS 开发 Certificate和Code Signing--证书与签名--详解

    iOS 开发 Certificate和Code Signing–证书与签名–详解 1.Certificate-证书 iOS 开发 证书–根证书/申请证书/开发(发布)证书–详解 2.Code Sign ...

  8. 图形 2.4 传统经验光照模型详解

    [技术美术百人计划]图形 2.4 传统经验光照模型详解_哔哩哔哩_bilibili 什么是光照模型 当光照射到物体表面时,物体对光会发生反射.透射.吸收.衍射.折射.和干涉,其中被物体吸收的部分转化为 ...

  9. Unity 分享 功能 用Unity Native Share Plugin 实现链接、图片、视频等文件的分享+ 安卓 Ios 都可以,代码图文详解

    Unity 分享 功能 用Unity Native Share Plugin 实现链接.图片.视频等文件的分享+ 安卓 Ios 都可以,代码图文详解 前言 环境 效果 一.Unity Native S ...

最新文章

  1. matlab条件判断配合输出
  2. 免费直播丨企服 9 大标杆规模化获客模型解读,制胜企服 3.0 时代
  3. 阿里P8架构师谈:java架构师面试技能24全点
  4. POI导出Word插入复选框
  5. datetime 比较_MySQL时间类型datetime,timestamp,int如何选择,很多程序员收藏了
  6. 公司内网环境下部署流量监控服务器的初步方案
  7. 细说 ASP.NET控制HTTP缓存[转]
  8. android 照片拼接长图_图文长截图(长图拼接制作)
  9. linux给wps安装字体
  10. Sentaurus TCAD模型创建、激活电极等
  11. 移动H5前端性能优化指南
  12. 教你如何设置让Excel窗口总是在最前面
  13. unsupported pickle protocol: 5
  14. SpringBoot 配合126邮箱实现邮件发送功能
  15. 002 免格式化U盘部署PE(BIOS)
  16. OSS对象存储命令管理、数据迁移
  17. Revit空闲事件(Idling Event)增强和外部事件(External Event)
  18. 大众点评Cat--架构分析
  19. 网络IO和磁盘IO详解
  20. Android WebView简介

热门文章

  1. linux命令--VI命令详解(三)
  2. K8S部署hazelcast
  3. 【收藏】firewalld开放端口
  4. 配置K8S web ui控制台
  5. Python3比较运算符
  6. 什么是JVM内存模型
  7. fastapi jinja2_(入门篇)Python框架之FastAPI——一个比Flask和Tornado更高性能的API 框架
  8. JVM运行时数据区分析
  9. Qt之QTemporaryDir用法(创建临时目录)
  10. 字符串拆分-Java