Android实战简易教程-第十七枪(LayoutAnimation布局动画)
2015-06-14 08:50
741 查看
我们对Tween和Frame动画比较熟悉,下面我们通过一个实例来了解一下LayoutAnimation(布局动画)
首先我们要建立一个动画文件zoom_in.xml:
main.xml:
运行实例:
![](http://img.blog.csdn.net/20150614155959455?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWF5dW4wNTE2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
总结:
1.LayoutAnimationController 控制器,引入动画文件;
2.setOrder(LayoutAnimationController.ORDER_NORMAL);设置显示顺序,多种显示风格可选;
3.listView.setLayoutAnimation(layoutAnimationController);//设定动画
listView.startLayoutAnimation();//启动动画
首先我们要建立一个动画文件zoom_in.xml:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" > <scale android:duration="1000" android:fromXScale="0.1" android:fromYScale="0.1" android:pivotX="50%" android:pivotY="50%" android:toXScale="1.0" android:toYScale="1.0" /> <alpha android:duration="1000" android:fromAlpha="0" android:toAlpha="1.0" /> </set>
main.xml:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" > <scale android:duration="1000" android:fromXScale="0.1" android:fromYScale="0.1" android:pivotX="50%" android:pivotY="50%" android:toXScale="1.0" android:toYScale="1.0" /> <alpha android:duration="1000" android:fromAlpha="0" android:toAlpha="1.0" /> </set>MainActivity.java:
package com.example.layoutanimationdemo; import java.util.ArrayList; import java.util.List; import android.support.v7.app.ActionBarActivity; import android.support.v7.app.ActionBar; import android.support.v4.app.Fragment; import android.R.anim; import android.content.Loader.ForceLoadContentObserver; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.view.animation.LayoutAnimationController; import android.widget.ArrayAdapter; import android.widget.ListView; import android.os.Build; public class MainActivity extends ActionBarActivity { private List list = new ArrayList(); private ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = (ListView) findViewById(R.id.list); for (int i = 0; i < 20; i++) { list.add("测试条目" + i); } ArrayAdapter<String> adapter = new ArrayAdapter<String>( MainActivity.this, android.R.layout.simple_list_item_1, list); listView.setAdapter(adapter); LayoutAnimationController layoutAnimationController = new LayoutAnimationController( AnimationUtils.loadAnimation(this, R.anim.zoom_in)); layoutAnimationController .setOrder(LayoutAnimationController.ORDER_NORMAL); listView.setLayoutAnimation(layoutAnimationController); listView.startLayoutAnimation(); } }
运行实例:
总结:
1.LayoutAnimationController 控制器,引入动画文件;
2.setOrder(LayoutAnimationController.ORDER_NORMAL);设置显示顺序,多种显示风格可选;
3.listView.setLayoutAnimation(layoutAnimationController);//设定动画
listView.startLayoutAnimation();//启动动画
相关文章推荐
- Android和JavaScript互相调用
- Android活动条(actionbar)使用详解(二)
- Android项目全局变量的定义
- Android 基础:Fragment的介绍与应用,QQ底栏,侧滑菜单
- android屏幕适配
- Android屏幕适配
- Android 之ActivityThead、ActivityManagerService 与activity的管理和创建
- Android 之 Window、WindowManager 与窗口管理
- android_sqlite开发入门
- Android Studio 引用so文件
- Android popupwindow 示例程序一
- Android 自定义dialog
- Android 调用系统相机以及相册源码
- Android中shape中的属性大全
- 详解Android中AsyncTask的使用
- 【Android】NIO相关
- 屏蔽android下的cclog输出
- 中文版android开发资源
- android 动态添加组件出现的一些问题
- ANDROID内存优化(大汇总——中)