A012-anim资源,成为阿里P7移动架构师到底有多难

android:shareInterpolator=[“true” | “false”] >

<alpha

android:fromAlpha=“float”

android:toAlpha=“float” />

<scale

android:fromXScale=“float”

android:toXScale=“float”

android:fromYScale=“float”

android:toYScale=“float”

android:pivotX=“float”

android:pivotY=“float” />

<translate

android:fromXDelta=“float”

android:toXDelta=“float”

android:fromYDelta=“float”

android:toYDelta=“float” />

<rotate

android:fromDegrees=“float”

android:toDegrees=“float”

android:pivotX=“float”

android:pivotY=“float” />

</set

<set> <alpha> <scale> <translate> <rotate>

这些标签都可以作为根标签,代表一种动画,其中<set> 可以包含以上所有标签,我们可以通过 <set> 和其他标签组合设计多种多样的动画效果。

下面逐个解析标签的作用:

<set>

代表一个AnimationSet

属性:

- android:interpolator (插值器)

- android:shareInterpolator(是否在所有的元素中分享插值器)

<alpha>

代表一个AlphaAnimation,淡入淡出动画

属性:

- android:fromAlpha(开始透明度,0.0-完全透明 1.0-不完全透明)

- android:toAlpha(结束透明度,0.0-完全透明 1.0-不完全透明)

<scale>

代表一个ScaleAnimation,缩放动画

属性:

- android:fromXScale(开始时X方向上相对自身的缩放比例,1.0表示没有变化)

- android:toXScale(结束时X方向上相对自身的缩放比例)

- android:fromYScale(开始时Y方向上相对自身的缩放比例)

- android:toYScale(结束时Y方向上相对自身的缩放比例)

- android:pivotX(缩放X轴位置,50表示绝对位置,50%表示相对自身,50%p表示相对父控件)

- android:pivotY(缩放Y轴位置,取值同上)

<translate>

代表一个TranslateAnimation,偏移动画

- android:fromXDelta(动画起始时 X坐标上的位置 )

- android:toXDelta(动画结束时 X坐标上的位置)

- android:fromYDelta(动画起始时 Y坐标上的位置 )

- android:toYDelta(动画结束时 Y坐标上的位置 )

取值举例:

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

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

<rotate>

代表一个RotateAnimation, 旋转动画

属性:

- android:fromDegrees(动画开始时角度)

- android:toDegrees(动画结束时角度)

- android:pivotX(旋转中心的X坐标)

- android:pivotY(旋转中心的Y坐标)

补间动画例子:

<set xmlns:android=“http://schemas.android.com/apk/res/android”

android:shareInterpolator=“false”>

<scale

android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:fromXScale=“1.0”

android:toXScale=“1.4”

android:fromYScale=“1.0”

android:toYScale=“0.6”

android:pivotX=“50%”

android:pivotY="5

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

0%"

android:fillAfter=“false”

android:duration=“700” />

<set

android:interpolator="@android:anim/accelerate_interpolator"

android:startOffset=“700”>

<scale

android:fromXScale=“1.4”

android:toXScale=“0.0”

android:fromYScale=“0.6”

android:toYScale=“0.0”

android:pivotX=“50%”

android:pivotY=“50%”

android:duration=“400” />

<rotate

android:fromDegrees=“0”

android:toDegrees="-45"

android:toYScale=“0.0”

android:pivotX=“50%”

android:pivotY=“50%”

android:duration=“400” />

代码中使用:

ImageView image = (ImageView) findViewById(R.id.image);

Animation hyperspaceJump = AnimationUtils.loadAnimation(this, R.anim.hyperspace_jump);

image.startAnimation(hyperspaceJump);

Frame Animation

===============

文件路径:res/drawable/filename.xml

这样的一个资源指向一个AnimationDrawable对象

资源引用:

- Java中引用:R.drawable.filename

- XML中引用:@drawable/filename

语法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值