当前位置: 代码迷 >> Android >> android 动画片资源
  详细解决方案

android 动画片资源

热度:52   发布时间:2016-04-28 07:18:19.0
android 动画资源

?

android的动画资源分为两类

属性(property)动画    通过在一定时间的动画来更改控件对象的属性。
view动画    tween 动画:          通过 Animation在一定时间内实现指定的变换来创建动画。    frame 动画:          通过AnimationDrawable实现一些列图片的逐张显示来实现。

?

属性动画:

??? 动画定义在xml文件中修改目标对象的某一个属性,如background,alpha etc.

??? 文件位置:res/animator/xxx.xml

??? 资源类型数据:ValueAnimator、ObjectAnimator、AnimatorSet

??? 资源引用:in java---R.animator.xxx???? in xml------@[package:]animator/xxx

??? 定义动画的语法:

<set? android:ordering=["together" | "sequentially"]>? ? <objectAnimator? ? ? ? android:propertyName="string"? ? ? ? android:duration="int"? ? ? ? android:valueFrom="float | int | color"? ? ? ? android:valueTo="float | int | color"? ? ? ? android:startOffset="int"? ? ? ? android:repeatCount="int"? ? ? ? android:repeatMode=["repeat" | "reverse"]? ? ? ? android:valueType=["intType" | "floatType"]/>? ? <animator? ? ? ? android:duration="int"? ? ? ? android:valueFrom="float | int | color"? ? ? ? android:valueTo="float | int | color"? ? ? ? android:startOffset="int"? ? ? ? android:repeatCount="int"? ? ? ? android:repeatMode=["repeat" | "reverse"]? ? ? ? android:valueType=["intType" | "floatType"]/>? ? <set>? ? ? ? ...? ? </set></set>

??? 在该文件中只有一个根元素可以是set、objectAnimator、valueAnimator当然你也可以将它们组合在一个set中,set之间允许嵌套。

<set>:持有其他动画元素的容器,对应的java类AnimatorSet.

android:order

指定<set>中动画的播放顺序

sequentially:按照顺序播放动画

together (default):同时播放所以动画

<objectAnimator>:在一段时间内为指定对象的某个属性赋予动画,对应java类ObjectAnimator.

android:propertyName

String Required,要实现动画的属性,你可以指定诸如alpha,backgroundColor等,当然在objectAnimator中不能指定目标对象在xml配置文件中,你可以通过loadAnimator()方法加载动画并通过setTarget()方法为动画指定目标。

android:valueTo

float, int, or color. Required.代表属性在动画最后的值.

android:valueFrom
float, int, or color.属性在动画开始的值,如果没有指定将通过属性的get方法获取默认值。
android:duration
int. 动画的时间(毫秒)
android:startOffset
int .?动画开始的延迟执行时间(毫秒)即调用start()后动画延迟执行的时间。
android:repeatCount
int . 动画重复执行的次数
-1和负数:无限循环执行
正数:执行相应的次数即可
0:执行1次后不循环
android:repeatMode
int . 动画结束后如何重复(重复模式),需要repeatCount为负数才有效
reverse:动画翻转,有结束向开始动画
repeat:重复动画
android:valueType
Keyword.不能为该属性指定是颜色的值,animator框架会自动处理颜色值。
intType:指定动画中值是整数
floatType (default):指定动画中的值是浮点数
<animator>:在指定的时间里执行动画,对应java类ValueAnimator
?属性参考<ObjectAnimator>??
<set xmlns:android="http://schemas.android.com/apk/res/android" >    <set android:ordering="together" >        <objectAnimator            android:duration="3000"            android:interpolator="@android:anim/accelerate_decelerate_interpolator"            android:propertyName="x"            android:repeatCount="-1"            android:repeatMode="reverse"            android:startOffset="100"            android:valueFrom="0"            android:valueTo="500" />        <objectAnimator            android:duration="3000"            android:interpolator="@android:anim/accelerate_decelerate_interpolator"            android:propertyName="y"            android:repeatCount="-1"            android:repeatMode="reverse"            android:startOffset="100"            android:valueFrom="0"            android:valueTo="500" />    </set>    <objectAnimator        android:duration="300"        android:interpolator="@android:anim/accelerate_decelerate_interpolator"        android:propertyName="alpha"        android:repeatCount="-1"        android:repeatMode="reverse"        android:valueFrom="0"        android:valueTo="1"        android:valueType="intType" >    </objectAnimator></set>上述动画实现目标对象有(0,0)位置移动到(500,500) alpha有0-1往返重复的过程
  相关解决方案