17_1_24 笔记之android 动画 1

本文详细介绍了Android中的四种基本动画类型:alpha、scale、translate和rotate,并提供了XML配置示例。此外,还介绍了Animation类的常用属性及其用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    来自http://blog.youkuaiyun.com/harvic880925/article/details/39996643

Android的animation由四种类型组成:alpha、scale、translate、rotate

alpha:渐变透明度动画效果

scale:渐变尺寸伸缩动画效果

translate:画面转换位置移动动画效果

rotate:画面转移旋转动画效果

动作定义文件应该存放在res/anim文件夹下,访问时采用R.anim.XXX.xml的方式

Animation类

Animation类是所有动画(scale、alpha、translate、rotate)的基类
  • android:duration        动画持续时间,以毫秒为单位 
  • android:fillAfter          如果设置为true,控件动画结束时,将保持动画最后时的状态
  • android:fillBefore       如果设置为true,控件动画结束时,还原到开始动画前的状态
  • android:fillEnabled    与android:fillBefore 效果相同,都是在动画结束时,将控件还原到初始化状态
  • android:repeatCount 重复次数
  • android:repeatMode 重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重新放一遍,必须与repeatCount一起使用才能看到效果。因为这里的意义是重复的类型,即回放时的动作。
  • android:interpolator  设定插值器,其实就是指定的动作效果,比如弹跳效果等

scale标签——调节尺寸

  • android:fromXScale    起始的X方向上相对自身的缩放比例,浮点值,比如1.0代表自身无变化,0.5代表起始时缩小一倍,2.0代表放大一倍;
  • android:toXScale        结尾的X方向上相对自身的缩放比例,浮点值;
  • android:fromYScale    起始的Y方向上相对自身的缩放比例,浮点值,
  • android:toYScale        结尾的Y方向上相对自身的缩放比例,浮点值;
  • android:pivotX            缩放起点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,当为数值时,表示在当前View的左上角,即原点处加上50px,做为起始缩放点;如果是50%,表示在当前控件的左上角加上自己宽度的50%做为起始点;如果是50%p,那么就是表示在当前的左上角加上父控件宽度的50%做为起始点x轴坐标。(具体意义,后面会举例演示)
  • android:pivotY           缩放起点Y轴坐标,取值及意义跟android:pivotX一样。
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <scale xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:fromXScale="0.0"  
  4.     android:toXScale="1.4"  
  5.     android:fromYScale="0.0"  
  6.     android:toYScale="1.4"  
  7.     android:pivotX="50"  
  8.     android:pivotY="50"  
  9.     android:duration="700" />  

alpha标签——调节透明度

  • android:fromAlpha   动画开始的透明度,从0.0 --1.0 ,0.0表示全透明,1.0表示完全不透明
  • android:toAlpha       动画结束时的透明度,也是从0.0 --1.0 ,0.0表示全透明,1.0表示完全不透明

rotate标签——旋转

  • android:fromDegrees     开始旋转的角度位置,正值代表顺时针方向度数,负值代码逆时针方向度数
  • android:toDegrees         结束时旋转到的角度位置,正值代表顺时针方向度数,负值代码逆时针方向度数
  • android:pivotX               缩放起点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,具体意义已在scale标签中讲述,这里就不再重讲
  • android:pivotY               缩放起点Y轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p

translate标签 —— 平移

  • android:fromXDelta     起始点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,具体意义已在scale标签中讲述,这里就不再重讲
  • android:fromYDelta    起始点Y轴从标,可以是数值、百分数、百分数p 三种样式;
  • android:toXDelta         结束点X轴坐标
  • android:toYDelta        结束点Y轴坐标

set标签——定义动作合集

属性有:(从Animation类继承的属性)

  • android:duration        动画持续时间,以毫秒为单位 
  • android:fillAfter          如果设置为true,控件动画结束时,将保持动画最后时的状态
  • android:fillBefore       如果设置为true,控件动画结束时,还原到开始动画前的状态
  • android:fillEnabled    与android:fillBefore 效果相同,都是在动画结束时,将控件还原到初始化状态
  • android:repeatCount 重复次数
  • android:repeatMode 重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重新放一遍,必须与repeatCount一起使用才能看到效果。因为这里的意义是重复的类型,即回放时的动作。
  • android:interpolator  设定插值器,其实就是指定的动作效果,比如弹跳效果等。

<?xml version="1.0" encoding="utf-8"?>
<set
    android:duration="3000"
    android:fillAfter="true"
    xmlns:android="http://schemas.android.com/apk/res/android">
 	<alpha
 	    android:fromAlpha="0.0"
 	    android:toAlpha="1.0" 
 	    />
 	<rotate 
 	    android:fromDegrees="0"
 	    android:toDegrees="720"
 	    android:pivotX="50%"
 	    android:pivotY="50%"	    
 	    />
 	
 	<scale android:fromXScale="0.5"
 	    android:toXScale="1.4"
 	    android:fromYScale="0.5"
 	    android:toYScale="1.4"
 	    android:pivotX="50%"
 	    android:pivotY="50%"
 	    />
 	
 	<translate 
 	    android:fromXDelta="0.0"
 	    android:toXDelta="50"
 	    android:fromYDelta="0.0"
 	    android:toYDelta="50"/>

</set>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值