动画类型

Androidanimation由四种类型组成

XML
alpha 渐变透明度动画效果
scale 渐变尺寸伸缩动画效果
translate 画面转换位置移动动画效果
rotate 画面转移旋转动画效果


JavaCode
AlphaAnimation 渐变透明度动画效果
ScaleAnimation 渐变尺寸伸缩动画效果
TranslateAnimation 画面转换位置移动动画效果
RotateAnimation 画面转移旋转动画效果

Android动画模式

Animation主要有两种动画模式

一种是tweened animation(渐变动画)
XML JavaCode
alpha AlphaAnimation
scale ScaleAnimation


一种是frame by frame(画面转换动画)

XML中 JavaCode
translate TranslateAnimation
rotate RotateAnimation

Android动画解析

alpha xml 淡出效果


[cpp] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <alpha
  4. android:fromAlpha="1.0"
  5. android:toAlpha="0.0"
  6. android:duration="500"/>
  7. </set>
  8. <!--
  9. fromAlpha:开始时透明度
  10. toAlpha:结束时透明度
  11. duration:动画持续时间-->

alpha xml 淡入效果

[cpp] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <alpha
  4. android:fromAlpha="0.0"
  5. android:toAlpha="1.0"
  6. android:duration="500"/>
  7. </set>
  8. <!--
  9. fromAlpha:开始时透明度
  10. toAlpha:结束时透明度
  11. duration:动画持续时间-->


rotate.xml 旋转效果:
[html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <rotate
  4. android:interpolator="@android:anim/accelerate_decelerate_interpolator"
  5. android:fromDegrees="300"
  6. android:toDegrees="-360"
  7. android:pivotX="10%"
  8. android:pivotY="100%"
  9. android:duration="10000"/>
  10. </set>
  11. <!--
  12. fromDegrees动画开始时的角度
  13. toDegrees动画结束时物件的旋转角度,正代表顺时针
  14. pivotX属性为动画相对于物件的X坐标的开始位置
  15. pivotY属性为动画相对于物件的Y坐标的开始位置-->


scale.xml 缩放效果:

[cpp] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <scale
  4. android:interpolator="@android:anim/decelerate_interpolator"
  5. android:fromXScale="0.0"
  6. android:toXScale="1.5"
  7. android:fromYScale="0.0"
  8. android:toYScale="1.5"
  9. android:pivotX="50%"
  10. android:pivotY="50%"
  11. android:startOffset="0"
  12. android:duration="10000"
  13. android:repeatCount="1"
  14. android:repeatMode="reverse"/>
  15. </set>
  16. <!--
  17. fromXDelta,fromYDelta起始时X,Y座标,屏幕右下角的座标是X:320,Y:480
  18. toXDelta,toYDelta动画结束时X,Y的座标--><!--
  19. interpolator指定动画插入器
  20. 常见的有加速减速插入器accelerate_decelerate_interpolator
  21. 加速插入器accelerate_interpolator,
  22. 减速插入器decelerate_interpolator。
  23. fromXScale,fromYScale,动画开始前X,Y的缩放,0.0为不显示,1.0为正常大小
  24. toXScale,toYScale,动画最终缩放的倍数,1.0为正常大小,大于1.0放大
  25. pivotX,pivotY动画起始位置,相对于屏幕的百分比,两个都为50%表示动画从屏幕中间开始
  26. startOffset,动画多次执行的间隔时间,如果只执行一次,执行前会暂停这段时间,
  27. 单位毫秒duration,一次动画效果消耗的时间,单位毫秒,
  28. 值越小动画速度越快repeatCount,动画重复的计数,动画将会执行该值+1次
  29. repeatMode,动画重复的模式,reverse为反向,当第偶次执行时,动画方向会相反。
  30. restart为重新执行,方向不变-->




translate.xml 移动效果:
[html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate
  4. android:fromXDelta="320"
  5. android:toXDelta="0"
  6. android:fromYDelta="480"
  7. android:toYDelta="0"
  8. android:duration="10000"/>
  9. </set>
  10. <!--
  11. fromXDelta,fromYDelta起始时X,Y座标,屏幕右下角的座标是X:320,Y:480
  12. toXDelta,toYDelta动画结束时X,Y的座标-->

translate 位置转移动画效果
整型值:
fromXDelta 属性为动画起始时 X坐标上的位置
toXDelta 属性为动画结束时 X坐标上的位置
fromYDelta 属性为动画起始时 Y坐标上的位置
toYDelta 属性为动画结束时 Y坐标上的位置
注意:
没有指定,
默认是以自己为相对参照物
长整型值:
duration 属性为动画持续时间

说明: 时间以毫秒为单位

在这些属性里面还可以加上%和p,例如:

android:toXDelta="100%",表示自身的100%,也就是从View自己的位置开始。

android:toXDelta="80%p",表示父层View的80%,是以它父层View为参照的。


更多相关文章

  1. android 动画入门
  2. Android自定义EditText,实现分割输入内容效果
  3. Android样式基础--属性动画((Property Animation)篇
  4. Android常用动画总结
  5. android activity进入退出动画自定义
  6. android 动画使用方式
  7. android 手势屏幕平移图片转换效果(也可以平移文本)
  8. Android关于Activity切换效果的实现加强

随机推荐

  1. Android(安卓)9.0 蓝牙配对流程
  2. 如何下载旧版本android NDK
  3. Android(安卓)AndroidManifest.xml配置文
  4. Android学习第四篇——使用绘图API自定义
  5. Android系统应用开发(六)Android(安卓)fram
  6. 安卓listview默认布局总结
  7. 解决Android(安卓)Studio cannot open th
  8. Android(安卓)给Animation设置setRepeatM
  9. Android中图片保存到本地,并及时更新到系
  10. Android(安卓)绘制图形时消除锯齿