温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android中的补间动画(tween)的简单使用

发布时间:2020-07-10 16:38:46 来源:网络 阅读:433 作者:ccdebug 栏目:移动开发

相对帧动画,补间动画(tween)可以这么理解:我们不必像帧动画一样指定动画的每一帧,只需定义一个动画的开始和结束关键帧,而中间变化的帧由系统帮我们计算。

tween动画可以分为下面几种:

AlphaAnimation(透明渐变动画):

示例:res/anim/alpha.xml

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="2000"  
    android:fillAfter="true"
    android:fromAlpha="0.0"
    android:repeatCount="1"
    android:repeatMode="reverse"
    android:toAlpha="1.0" >

</alpha>

属性介绍:

duration:动画持续的时间

fromAlpha:渐变开始值,Float 0.0完全透明 1.0完全不透明

toAlpha:渐变结束值

repeatCount: 动画重复次数

repeatMode:动画重复模式,["repeat"|"reverse"] repeat(透明-不透明 透明-不透明)

reverse(透明-不透明 不透明-透明)

开始动画:

Animation animation = AnimationUtils.loadAnimation(this, R.anim.alpha);
iv.startAnimation(animation);    //使用ImageView的startAnimation开始动画

ScaleAnimation(缩放动画):

res/anim/scale.xml

<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="2000"
    android:fillAfter="false"
    android:fromXScale="0.2"
    android:fromYScale="0.2"
    android:pivotX="50%"
    android:pivotY="50%"
    android:repeatCount="1"
    android:repeatMode="reverse"
    android:toXScale="2.0"
    android:toYScale="2.0" >

</scale>

主要属性说明:

fromXScale,fromYScale: 动画开始时缩放比(x,y轴)

toXScale,toYscale: 动画结束时缩放比

pivotX,pivotY:缩放中心点 (50%,50%)则为自身中心点(0,0)左上方


TranslateAnimation(位移动画):

res/anim/translate.xml

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="-50%p"
    android:fromYDelta="0.0"
    android:toXDelta="50%p"
    android:toYDelta="0.0"
    android:repeatCount="1"
    android:repeatMode="reverse"
    android:duration="2000"
     >

</translate>

fromXDelta fromYDelta:开始位置坐标,可以是Float值和百分比 50%p以父容器为参考

toXDelta toYDelta: 结束位置坐标

RotateAnimation(旋转动画):

res/anim/rotate.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:repeatCount="1"
    android:repeatMode="reverse"
    android:duration="2000" >

</rotate>

属性介绍:

fromDegrees:旋转开始角度

toDegrees:旋转结束角度,

pivotX pivotY:旋转中心点

上面动画实现以自身中心点为基准点旋转360度

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI