animation动画详解

</pre>动画效果分为两类,第一种是补间动画,里面包含了alpha,scale,translate,ratate,第二种是帧动画,frame。<p></p><p>其中alpha表示渐变透明动画效果</p><p><span style="white-space:pre">	</span>scale表示渐变尺寸缩放效果</p><p><span style="white-space:pre">	</span>translate表示画面转换位置移动效果</p><p><span style="white-space:pre">	</span>rotate表示画面转移旋转动画效果</p><h5><ol><li>alpha渐变透明效果</li></ol><pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
       android:duration="3000"
       android:fromAlpha="0.0"
       android:interpolator="@android:anim/accelerate_decelerate_interpolator"
       android:toAlpha="1.0" >

</alpha>
duration:表示动画持续的时间
fromAlpha:表示动画效果开始的透明度
<pre name="code" class="html" style="font-weight: bold;">toAlpha:表示动画效果结束的透明度
<pre name="code" class="html" style="font-weight: bold;">interpolator:主要适用于控制动画的变化速度,也就是动画进行的快慢程度,android系统为我们提供了一些interplator,比如<span style="color: rgb(51, 51, 51); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; line-height: 24px;">accelerate_decelerate_interpolator,accelerate_interpolator</span>
也可以自定义
2.scale标签——缩放
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
       android:duration="3000"
       android:fromXScale="0.0"
       android:fromYScale="0.0"
       android:pivotX="50%"
       android:pivotY="50%"
       android:repeatCount="6"
       android:repeatMode="reverse"
       android:toXScale="1.0"
       android:toYScale="1.0">
</scale>
<pre name="code" class="html" style="color: rgb(51, 51, 51); font-size: 16px; font-weight: bold; line-height: 24px;">pivotX/<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">pivotY</span><span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">:开始的时候图片位置,x,y表示在X,Y轴上面的位置,这里取值可以有三种50,50%,50%p.50表示的是50个像素,50%表示在当前控件的左上角,加上宽度的50%作为开始起点,50%p表示在当前左上角加上父控件宽度的50%作为起点</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">fromXScale/fromYScale:表示起始在X轴方向上相对于自身的缩放比例,1.0无变化,0.5缩小一半,2.0放大一倍</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">toXScale/toYScale:表示结尾在该位置上面相对于自身的缩放比例</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">其他属性</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"><span style="white-space:pre">	</span>android:fillAfter  设置为true,当动画结束的时候,保持最后的状态</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"><span style="white-space:pre">	</span>android:fillBefore  设置为true,当动画结束的饿时候,保持开始的状态</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"><span style="white-space:pre">	</span>android:repeatCount   重复的次数</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"><span style="white-space:pre">	</span>android:repeatMode   重复类型,有两种方式reverse(倒序回放),restart(重新播放),必须和repeatCount一起才能看到效果</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';">3.Rotate旋转属性</span>
<span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"><span style="white-space:pre"></span></span><pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate
        android:duration="2000"
        android:pivotX="50%"
        android:pivotY="50%"
        android:fromDegrees="0"
        android:toDegrees="-360"
        android:repeatCount="10"
        android:repeatMode="reverse"
        ></rotate>
</set>
<pre name="code" class="html" style="color: rgb(51, 51, 51); font-size: 16px; font-weight: bold; line-height: 24px;">fromDegrees:开始旋转的角度
toDegrees:结束的旋转角度,如果是正数顺时针旋转,如果是负数逆时针旋转
4.translate:移动
<span style="white-space:pre"></span><pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromXDelta="0"
        android:toXDelta="100%p"
        android:fromYDelta="0"
        android:toYDelta="100%p"
        android:duration="3000"
        android:repeatCount="6"
        android:repeatMode="reverse"
        ></translate>
</set>
</pre>

 
 
 
 
 
 

 

 




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值