Android开发--图形图像与动画(五)--详解LayoutAnimationController
首先需要先介绍下LayoutAnimationController:
* 1.LayoutAnimationController用于为一个layout里面的控件,或者是一个ViewGroup
* 里面的控件设置动画效果(即整个布局)
* 2.每一个控件都有相同的动画效果
* 3.这些控件的动画效果在不同的实现显示出来
* 4.LayoutAnimationController可以在xml文件当中设置,也可以在代码中进行设置
本文就针对两种实现LayoutAnimationController的方法分别进行介绍:
一,在XML文件中实现
步骤如下图所示:
下面以一个实例来说明实现的方法:
实现的例子是点击“测试”按钮,有动画形式的view展现出来,截图如下:
具体的实现过程如下:
需要两个动画xml文件:
1.list_item_layout
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android" android:animation="@anim/list_item_alpha" android:animationOrder="normal" android:delay="0.8" />
2.list_item_alpha
<set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="2000" />
</set>
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"};@Overrideprotected 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<String> adapter=new ArrayAdapter<String>(this, R.layout.item_list, STRINGS);button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stublistView.setAdapter(adapter); }});button2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stublistView.setAdapter(null); }});}@Overridepublic 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开发--图形图像与动画(五)--详解LayoutAnimationController相关推荐
- Android开发--图形图像与动画(三)--Animation效果的XML实现
使用XML来定义Tween Animation 动画的XML文件在工程中res/anim目录,这个文件必须包含一个根元素,可以使<alpha><scale> <trans ...
- Android开发--图形图像与动画(二)--Animation实现图像的 渐变、缩放、位移、旋转
Android 平台提供了两类动画. 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转.平移.放缩和渐变). 下面就讲一下Tweene Animations. 主要类: ...
- Android开发--图形图像与动画(二)--Animation实现图像的 渐变 缩放 位移 旋转
Android 平台提供了两类动画. 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转.平移.放缩和渐变). 下面就讲一下Tweene Animations. 主要类: ...
- Android开发--图形图像与动画(四)--AnimationListener简介
就像Button控件有监听器一样,动画效果也有监听器,只需要实现AnimationListener就可以实现对动画效果的监听,其中需要重载三个函数,就是下面的这几个函数: private class ...
- Android开发--图形图像与动画(一)--Paint和Canvas类
* Paint类 * Paint类代表画笔,用来描述图形的颜色和风格,如线宽,颜色,透明度和填充效果等信息. * 使用Paint类时,需要先创建该类的对象,可以通过该类的构造函数实现.通常情况的实 ...
- 【Android开发】greenrobot三大开源利器详解(一)——EventBus
一.greenrobot介绍 greenrobot相关信息较少,可以确信是一个开源组织.官网:http://greenrobot.org/. greenrobot主要开发并维护了3个Android开源 ...
- android 网络编程实现,Android开发使用HttpURLConnection进行网络编程详解【附源码下载】...
本文实例讲述了Android开发使用HttpURLConnection进行网络编程.分享给大家供大家参考,具体如下: --HttpURLConnection URLConnection已经可以非常方便 ...
- android编程xml动画,Android中xml设置Animation动画效果详解
在Android中,Animation动画效果的实现可以通过两种方式进行实现,一种是tweened animation渐变动画,另一种是frame by frame animation画面转换动画. ...
- android设置高度比例,android开发layout按比例布局(详解)
释放双眼,带上耳机,听听看~! 由于Android的复杂性,在写程序的时候经常会遇见一些难题,也可能会遇见处理不了的问题,下面是技术狗小编详解android layout 按比例布局的代码,一起进入下 ...
最新文章
- 【NOIP校内模拟】塔
- JAVA8后接口的新特性
- 如何打造自己强大的气场?
- swf到html5转换器,iPixSoft SWF to HTML5 Converter(SWF到HTML5转换器) V3.6.0 官方版[安全工具]...
- android 列表上拉加载更多,Android 下拉刷新,上拉加载更多控件–支持ListView,GridView和ScrollView...
- Mac如何修复“无法卸载磁盘”错误
- geatpy - 遗传和进化算法相关算子的库函数(python)
- html和css设计网页实例,经典网页设计:30个创意的 CSS 应用案例
- Windows常用运行库合集--官网(VC++、DirectX、.NET)
- 思科路由器OSPF配置实例
- 2022五一数学建模有何思路模型?
- 设计模式--创建型设计模式
- 运放的参数详解及应用电路
- Matlab的基本使用方法
- 用友U8+ V16.0 V15.1 V15.0 V13.0 V12.5 12.1 12.0 11.1 11.0注册
- 年份必须是4位数 C语言,输入年份(四位数),判断是否是闰年 C语言编程
- 怎么选择合适的PLM系统
- Edsger Wybe Dijkstra
- 2023年,IT互联网还有发展前景吗?
- 如何配置虚拟机桥接网络