zoukankan      html  css  js  c++  java
  • Android的Animation之LayoutAnimation使用方法

    LayoutAnimationController用于为一个layout里面的控件,或者是一个ViewGroup里面的控件设置动画效果,可以在XML文件中设置,亦可以在Java代码中设置。

    一种直接在XML文件中设置

    1.  res/anim文件夹下新建一个XML文件,名为list_anim_layout.xml,

    1 <layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
    2         android:delay="30%"
    3         android:animationOrder="reverse"
    4         android:animation="@anim/slide_right" />

    android:delay  子类动画时间间隔 (延迟)   70% 也可以是一个浮点数 如“1.2”等

    android:animationOrder="random"   子类的显示方式 random表示随机

    android:animationOrder 的取值有 

    android:animation="@anim/slide_right" 表示孩子显示时的具体动画是什么

    normal0   默认

    reverse1  倒序

    random2  随机

    说明:其中delay的单位为秒;animation为设置动画的文件。animationOrder为进入方式

    2.  res/anim文件夹下新建一个XML文件,名为slide_right,即上面用到的文件。

    1     <set xmlns:android="http://schemas.android.com/apk/res/android" 
    2         android:interpolator="@android:anim/accelerate_interpolator">
    3     <translate android:fromXDelta="-100%p" android:toXDelta="0"
    4             android:duration="@android:integer/config_shortAnimTime" />
    5 </set>

     显示的效果为ListView第一次出现的时候为 item随机出现 每个Item都是从左不可见(-100%p)的区域向右滑动到显示的地方

    3.  在主布局文件中为控件添加如下配置:

    android:layoutAnimation="@anim/list_anim_layout",即第一步的布局文件。

    第二种设置方法:在Java代码中设置

    1. 同上;

    2. 同上;

    4.  Acitivty中添加如下代码:

     1 //通过加载XML动画设置文件来创建一个Animation对象;
     2        Animation animation=AnimationUtils.loadAnimation(this, R.anim.list_anim);
     3        //得到一个LayoutAnimationController对象;
     4        LayoutAnimationController lac=new LayoutAnimationController(animation);
     5        //设置控件显示的顺序;
     6        lac.setOrder(LayoutAnimationController.ORDER_REVERSE);
     7        //设置控件显示间隔时间;
     8        lac.setDelay(1);
     9        //为ListView设置LayoutAnimationController属性;
    10    datalist.setLayoutAnimation(lac);
  • 相关阅读:
    LOJ 6089 小Y的背包计数问题 —— 前缀和优化DP
    洛谷 P1969 积木大赛 —— 水题
    洛谷 P1965 转圈游戏 —— 快速幂
    洛谷 P1970 花匠 —— DP
    洛谷 P1966 火柴排队 —— 思路
    51Nod 1450 闯关游戏 —— 期望DP
    洛谷 P2312 & bzoj 3751 解方程 —— 取模
    洛谷 P1351 联合权值 —— 树形DP
    NOIP2007 树网的核
    平面最近点对(加强版)
  • 原文地址:https://www.cnblogs.com/androidxiaoyang/p/2948129.html
Copyright © 2011-2022 走看看