Android动画

Android JDK为我们提供了4种动画效果,分别是: AlphaAnimation,RotateAnimation, ScaleAnimation, TranslateAnimation.

AlphaAnimation 透明度动画效果
ScaleAnimation 缩放动画效果
TranslateAnimation 位移动画效果
RotateAnimation 旋转动画效果

------------------TranslateAnimation

TranslateAnimation是移动的动画效果。它有三个构造函数,分别是:

  1.public  TranslateAnimation(Context context,AttributeSet attrs)   略过

  2.public  TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta)

  这个是我们最常用的一个构造方法,

  float fromXDelta:这个参数表示动画开始的点离当前View X坐标上的差值;

  float toXDelta, 这个参数表示动画结束的点离当前View X坐标上的差值;

  float fromYDelta, 这个参数表示动画开始的点离当前View Y坐标上的差值;

  float toYDelta)这个参数表示动画开始的点离当前View Y坐标上的差值;

  如果view在A(x,y)点 那么动画就是从B点(x+fromXDelta, y+fromYDelta)点移动到C 点(x+toXDelta,y+toYDelta)点.


  3.public  TranslateAnimation (int fromXType, float fromXValue, int toXType, float toXValue, int fromYType, float fromYValue, int toYType, float toYValue)

  fromXType:第一个参数是x轴方向的值的参照(Animation.ABSOLUTE, Animation.RELATIVE_TO_SELF,or Animation.RELATIVE_TO_PARENT);

  fromXValue:第二个参数是第一个参数类型的起始值;

  toXType,toXValue:第三个参数与第四个参数是x轴方向的终点参照与对应值;

  后面四个参数就不用解释了。如果全部选择Animation.ABSOLUTE,其实就是第二个构造函数。

      以x轴为例介绍参照与对应值的关系:

      如果选择参照为Animation.ABSOLUTE,那么对应的值应该是具体的坐标值,比如100到300,指绝对的屏幕像素单位

      如果选择参照为Animation.RELATIVE_TO_SELF或者 Animation.RELATIVE_TO_PARENT指的是相对于自身或父控件,对应值应该理解为相对于自身或者父控件的几倍或百分之多少。多试参数就明白了。


 2、rotate动画,(旋转动画)

(1)xml文件的定义方式:

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromDegrees="0"
android:toDegrees="+360"
android:pivotX="50%"
android:pivotY="50%"
android:duration="2000"
android:oneshot="false" />

         说明

fromDegress  动画开始的角度

toDegress  动画结束时的角度,正值代表顺时针

pivotX  旋转中心的X坐标。浮点数或者是百分比,浮点数和百分比 表示相对于Object的左边缘;一般设置50%表示Object的中心。

pivotY  旋转中心的Y坐标。

duration  从fromDefress 转动到 toDegress 所消耗的事件,单位为毫秒,

android:oneshot   如果为true,表示动画只播放一次停止在最后一帧上,如果为false,表示动画循环播放。

android:interpolator  插值器,设置动画变化速率,加速,减速...默认为开始和结束慢中间快。

android:repeatCount 重复的模式。


  RotateAnimation  



参考文章:

http://www.cnblogs.com/angeldevil/archive/2011/12/02/2271096.html (g)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值