Android RotateAnimation详解

转载 2013年12月04日 17:20:10

其他构造器的旋转也可参考这副图。
RotateAnimation旋转坐标系为以旋转点为坐标系(0,0)点。x轴为0度,顺时针方向旋转一定的角度。
1.RotateAnimation(fromDegrees, toDegrees) [默认以View左上角顶点为旋转点]。
X轴顺时针转动到fromDegrees为旋转的起始点,
X轴顺时针转动到toDegrees为旋转的起始点。
如fromDegrees=0,toDegrees=90;为左上角顶点为旋转点。0度为起始点,90度为终点。进行旋转,旋转了90度
如fromDegrees=60,toDegrees=90;为左上角顶点为旋转点。60度为起始点,90度为终点。进行旋转,旋转了90-60=30度


2.RotateAnimation(float fromDegrees, float toDegrees, float pivotX, float pivotY)
(pivotX,pivotY)为旋转点。pivotX为距离左侧的偏移量,pivotY为距离顶部的偏移量。即为相对于View左上角(0,0)的坐标点。
如View width=100px,height=100px
RotateAnimation(0,10,100,100);则以右下角顶点为旋转点,从原始位置顺时针旋转10度
RotateAnimation(0,90,50,50);则以View的中心点为旋转点,旋转90度


3.RotateAnimation(fromDegrees, toDegrees, pivotXType, pivotXValue, pivotYType, pivotYValue)
pivotXType, pivotXValue, pivotYType, pivotYValue  旋转点类型及其值。
Animation.ABSOLUTE为绝对值 其他为百分比。这个和平移动画的一样,不了解可以去那看
如RotateAnimation(0, 90, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); 按中心点旋转90度
效果和2例中的RotateAnimation(0,90,50,50);则以View的中心点为旋转点,旋转90度 。效果一样


new RotateAnimation(0, 180, centerX,centerY);
第一个参数表示动画的起始角度,第二个参数表示动画的结束角度,第三个表示动画的旋转中心x轴,第四个表示动画旋转中心y轴。
rotateAnimation.setDuration(1000 * 20);
表动画持续20s。
rotateAnimation.setFillAfter(true);
ture表示动画结束后停留在动画的最后位置,false表示动画结束后回到初始位置,默认为false。
mView.startAnimation(rotateAnimation);
表示在mView中启动动画。 

【Android动画九章】-RotateAnimation(旋转动画)和ScaleAnimation(尺寸动画)

public abstract class Animation extends Object implements Cloneable java.lang.Object ↳ an...
  • yayun0516
  • yayun0516
  • 2016年04月29日 16:30
  • 3468

Android RotateAnimation动画不能旋转的问题

今天要做一个Android RotateAnimation动画,
  • tszxlzc
  • tszxlzc
  • 2014年08月07日 15:45
  • 2261

RotateAnimation 动画的参数详解

只解释 以下参数 float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, f...
  • jj3341332
  • jj3341332
  • 2016年11月10日 16:55
  • 1174

android RotateAnimation设置中心点旋转动画

在xml设置:
  • zhuhai__yizhi
  • zhuhai__yizhi
  • 2015年09月16日 12:53
  • 10515

Android Tween动画之RotateAnimation实现图片360°不停旋转

Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果;第二类是 Frame 动画,即顺序播放事先做好的图像,跟电影类似。本文...
  • suphy2009
  • suphy2009
  • 2013年03月23日 23:48
  • 1822

Android中如何使用rotate实现图片不停旋转的效果与动画的停止

本文主要介绍Android中如何使用rotate实现图片不停旋转的效果。Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果...
  • dreamer0924
  • dreamer0924
  • 2013年11月21日 09:50
  • 5252

android动画之从源码角度分析动画原理(一)

介绍android动画目前分为三种形式,Tween Animation 这个只能应用于view对象上面的,Drawable Animation这个是帧动画,就是类似我们有一些列的图片依次播放图片时出现...
  • caonima0001112
  • caonima0001112
  • 2015年07月30日 20:58
  • 1095

Android动画之RotateAnimation的基本用法

1. 在android中提供了4中动画: AlphaAnimation 透明度动画效果 ScaleAnimation 缩放动画效果 TranslateAnimation 位移动画效果 ...
  • u013201028
  • u013201028
  • 2015年05月27日 10:46
  • 308

抗锯齿方法两种

在Android中,目前,我知道有两种出现锯齿的情况。  ①当我们用Canvas绘制位图的时候,如果对位图进行了选择,则位图会出现锯齿。  ②在用View的RotateAnimation做动画时候,如...
  • zhang31jian
  • zhang31jian
  • 2014年07月30日 10:33
  • 1679

RotateAnimation 实现表盘指针转动

RotateAnimation 实现表盘指针转动 最近在做车助手这个项目,遇到这样的一个功能需求:获取车子启动的实时数据让指针转动: 我这里做了一个Demo:demo的原理在于使用onTouchE...
  • lyhDream
  • lyhDream
  • 2013年04月10日 10:57
  • 3770
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android RotateAnimation详解
举报原因:
原因补充:

(最多只允许输入30个字)