Android 补间动画属性详解

关于android的动画网上介绍已经很多了,写的好的文章也有很多,自己记录一下关于补间动画的属性:

1.补间动画种类


java类名                                          xml                                                      描述信息


AlphaAnimation                放置在res/anim/目录下                   渐变透明度动画效果


RotateAnimation              放置在res/anim/目录下                  画面转移旋转动画效果 


ScaleAnimation                放置在res/anim/目录下                  渐变尺寸伸缩动画效果


TranslateAnimation         放置在res/anim/目录下                画面转换位置移动动画效果


AnimationSet                  放置在res/anim/目录下         一个持有其它动画元素alpha、scale、                         

                                                                                        translate、rotate或者其它set元素的容器


上面是关于补间动画的种类,关系以及作用。

2-1. Animation属性详解(xml和java方式)


              xml属性                                         java方法                                                  释义


android:detachWallpaper        setDetachWallpaper(boolean)               是否在壁纸上运行


android:duration                      setDuration(long)                              动画持续时间,毫秒为单位


android:fillAfter                       setFillAfter(boolean)      控件动画结束时是否保持动画最后的状态


android:fillBefore                    setFillBefore(boolean)   控件动画结束时是否还原到开始前的状态


android:fillEnabled                 setFillEnabled(boolean)                   与android:fillBefore效果相同


android:interpolator              setInterpolator(Interpolator)       设定插值器(指定的动画效果,   

                                                                                                                        譬如回弹等)


android:repeatCount              setRepeatCount(int)                                     重复次数


android:repeatMode              setRepeatMode(int)                  重复类型有两个值,reverse表示               

                                                                                                     倒序回放,restart表示从头播放


android:startOff                   setsetStartOffset(long)               调用start函数之后等待开始运行的

                                                                                                                 时间,单位为毫秒


android:zAdjustment           setZAdjustment(int)          表示被设置动画的内容运行时在Z轴位置

                                                                                          (top/bottom/normal),默认为normal


上面的这些属性无论哪一种补间动画都是具备的,可以设置一个或多个,属于补间动画的通用属性。下面介绍每种补间动画的特有属性:

2-2-1.Alpha(透明变化,淡入淡出效果)属性详解


             xml属性                                              java方法                                             释义


android:fromAlpha          AlphaAnimation(float fromAlpha, …)         动画开始的透明度(0.0到

                                                                                                      1.0,0.0是全透明,1.0是不透明)


android:toAlpha            AlphaAnimation(…, float toAlpha)                 动画结束的透明度,同上


2-2-2.Translate(位移)属性详解


             xml属性                                             java方法                                                释义


android:fromXDelta    TranslateAnimation(float fromXDelta, …)    起始点X轴坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)


android:fromYDelta     TranslateAnimation(…, float fromYDelta, …)      起始点Y轴坐标(同上)                              


android:toXDelta         TranslateAnimation(…, float toXDelta, …)           结束点X轴坐标(同上)


android:toYDelta         TranslateAnimation(…, float toYDelta)                结束点Y轴坐标(同上)


2-2-3.Scale(缩放大小)属性详解


              xml属性                                   java方法                                                释义


android:fromXScale         ScaleAnimation(float fromX, …)        初始x轴缩放比例(0.0~1.0)


android:fromYScale        ScaleAnimation(…, float fromY, …)     初始y轴缩放比例(0.0~1.0)


android:pivotX              ScaleAnimation(…, float pivotX, …)      缩放起点x位置坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)


android:pivotY               ScaleAnimation(…, float pivotY)          缩放起点y位置坐标,(同上)


android:toXScale           ScaleAnimation(…, float toX, …)          结束x轴缩放比例(0.0~1.0)


android:toYScale           ScaleAnimation(…, float toY, …)          结束y轴缩放比例(0.0~1.0)


2-2-4.Rotate(旋转)属性详解


              xml属性                                  java方法                                                释义


android:fromDegrees  RotateAnimation(float fromDegrees, …)  旋转开始角度,正代表顺时针度


android:pivotX          RotateAnimation(…, float pivotX, …)  旋转起点X坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)


android:pivotY         RotateAnimation(…, float pivotX, …)  旋转起点Y坐标,同上


android:toDegrees  RotateAnimation(…, float toDegrees, …) 旋转结束角度,正代表顺时针度数


2-2-5 set标签以及AnimationSet详解

AnimationSet继承自Animation,是上面四种的组合容器管理类,没有自己特有的属性,他的属性继承自Animation,所以特别注意,当我们对set标签使用Animation的属性时会对该标签下的所有子控件都产生影响。

2-3 -1 Animation类的常用方法


Animation类的方法                                                                        释义


reset()                                                                               重置Animation的初始化


cancel()                                                                             取消Animation动画


start()                                                                                开始Animation动画  


setAnimationListener(AnimationListener listener)      给当前Animation设置动画监听


hasStarted()                                                                     判断当前Animation是否开始


hasEnded()                                                                       判断当前Animation是否结束


2-3-2 View类的常用动画操作方法

既然补间动画只能给View使用,那就来看看View中和动画相关的几个常用方法吧,如下:


View类的常用动画方法                                                          释义


startAnimation(Animation animation)             对当前View开始设置的Animation动画


clearAnimation()                                               取消当View在执行的Animation动画


记录一下。

源码地址:动画示例demo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • 1 背景 不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今...
    未聞椛洺阅读 2,580评论 0 9
  • Animation Animation类是所有动画(scale、alpha、translate、rotate)的基...
    四月一号阅读 1,868评论 0 10
  • 读书之用 著名作家、北大教授曹文轩有一次在给北大中文系新生的入学演讲中,谈到他对阅读的理解和感悟。阅读是一种人生方...
    皋辜格琢阅读 1,327评论 4 4
  • 她回来了。人生呀,注定有些人参与你的前半生,在你的生命里扮演举足轻重的角色!后来,因为某些原因,你们成为毫不相干的...
    陆染66阅读 190评论 0 0