美文网首页动画
Activity常用过渡动画

Activity常用过渡动画

作者: 安卓_背包客 | 来源:发表于2020-12-29 14:39 被阅读0次

res/anim目录下,考进去:

最简单用法:
startActivity后加:overridePendingTransition(R.anim.anim_in, R.anim.anim_out);
finish()后加:overridePendingTransition(R.anim.anim_in, R.anim.anim_out);

动画注释:

fade:逐渐消失
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
       android:interpolator="@android:anim/accelerate_interpolator"
       android:fromAlpha="0.0" android:toAlpha="1.0"
       android:duration="2000" />
hold:平稳行驶
<translate xmlns:android="http://schemas.android.com/apk/res/android"
       android:interpolator="@android:anim/accelerate_interpolator"
       android:fromXDelta="0" android:toXDelta="0"
       android:duration="2000" />
hyperspace_in:多维空间
<alpha xmlns:android="http://schemas.android.com/apk/res/android" android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="2000" android:startOffset="1200" />
hyperspace_out:  
<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="50%"
        android:fillAfter="false" android:duration="2000" />
    <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="2000" />
        <rotate android:fromDegrees="0" android:toDegrees="-45"
            android:toYScale="0.0" android:pivotX="50%" android:pivotY="50%"
            android:duration="2000" />
    </set>
</set>

my_alpha_action
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha android:fromAlpha="1.0" android:toAlpha="0" android:duration="2000"/> 
<!-- 透明度控制动画效果 alpha
        浮点型值:
        fromAlpha 属性为动画起始时透明度
        toAlpha   属性为动画结束时透明度
        说明: 
        0.0表示完全透明
        1.0表示完全不透明
                     以上值取0.0-1.0之间的float数据类型的数字
        
        长整型值:
        duration  属性为动画持续时间
        说明:     
                     时间以毫秒为单位
-->
</set>
my_scale_action
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <scale android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromXScale="0.0" android:toXScale="1.4" android:fromYScale="0.0"
        android:toYScale="1.4" android:pivotX="50%" android:pivotY="50%"
        android:fillAfter="false" android:duration="2000" />
</set>
push_left_in
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromXDelta="100%p" android:toXDelta="0"
        android:duration="2000" />
</set>

push_left_out
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromXDelta="0" android:toXDelta="-100%p"
        android:duration="2000" />
</set>

push_up_in
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromYDelta="100%p" android:toYDelta="0" android:duration="2000"/>
    <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="2000" />
</set>

push_up_out
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromYDelta="0" android:toYDelta="-100%p" android:duration="2000"/>
    <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="2000" />
</set>

scale_rotate
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <scale android:interpolator="@android:res/anim/accelerate_decelerate_interpolator"
        android:fromXScale="0.0" android:toXScale="1.0" android:fromYScale="0.0"
        android:toYScale="1.0" android:pivotX="50%" android:pivotY="50%"
        android:duration="2000" android:repeatCount="0" android:startOffset="20"></scale>
    <rotate android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromDegrees="0" android:toDegrees="+355" android:pivotX="50%"
        android:pivotY="50%" android:duration="2000" />
</set>

scale_translate
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <scale android:interpolator="@android:res/anim/accelerate_decelerate_interpolator"
        android:fromXScale="0.0" android:toXScale="1.0" android:fromYScale="0.0"
        android:toYScale="1.0" android:pivotX="0" android:pivotY="0"
        android:duration="2000" android:repeatCount="0" android:startOffset="0"></scale>
    <translate android:fromXDelta="0" android:toXDelta="0"
        android:fromYDelta="0" android:toYDelta="0" android:duration="2000" />
</set>

scale_translate_rotate
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <scale android:interpolator="@android:res/anim/accelerate_decelerate_interpolator"
        android:fromXScale="0.0" android:toXScale="1.0" android:fromYScale="0.0"
        android:toYScale="1.0" android:pivotX="50%" android:pivotY="50%"
        android:duration="2000"></scale>
    <translate android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromXDelta="120" android:toXDelta="30" android:fromYDelta="30"
        android:toYDelta="250" android:duration="2000" />
    <rotate android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromDegrees="0" android:toDegrees="+355" android:pivotX="50%"
        android:pivotY="50%" android:duration="2000" />
</set>

slide_down_out
<set android:interpolator="@android:anim/accelerate_interpolator"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:duration="2000"
        android:fromYDelta="0.0" android:toYDelta="100.0%p" />
</set>
slide_left
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
    <translate android:fromXDelta="100%p" android:toXDelta="0"
        android:duration="2000" />
</set>

slide_right
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
    <translate android:fromXDelta="-100%p" android:toXDelta="0"
            android:duration="2000" />
</set>

slide_up_in
<set android:interpolator="@android:anim/decelerate_interpolator"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:duration="2000"
        android:fromYDelta="100.0%p" android:toYDelta="0.0" />
</set>
wave_scale
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator">
    <alpha android:fromAlpha="0.0" android:toAlpha="1.0"
        android:duration="2000" />
    <scale android:fromXScale="0.5" android:toXScale="1.5"
        android:fromYScale="0.5" android:toYScale="1.5" android:pivotX="50%"
        android:pivotY="50%" android:duration="2000" />
    <scale android:fromXScale="1.5" android:toXScale="1.0"
        android:fromYScale="1.5" android:toYScale="1.0" android:pivotX="50%"
        android:pivotY="50%" android:startOffset="200" android:duration="2000" />
</set>

zoom_enter
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/decelerate_interpolator">
    <alpha android:fromAlpha="0" android:toAlpha="1.0"
        android:duration="2000" />
    <scale android:fromXScale="2.0" android:toXScale="1.0"
        android:fromYScale="2.0" android:toYScale="1.0" android:pivotX="50%p"
        android:pivotY="50%p" android:duration="2000" />
</set>

zoom_exit
<set xmlns:android="http://schemas.android.com/apk/res/android"
        android:interpolator="@android:anim/decelerate_interpolator"
        android:zAdjustment="top">
    <scale android:fromXScale="1.0" android:toXScale="0"
           android:fromYScale="1.0" android:toYScale="0"
           android:pivotX="0" android:pivotY="0"
           android:duration="2000" />
    <alpha android:fromAlpha="1.0" android:toAlpha="0"
            android:duration="2000"/>
</set>

对应效果:
淡入淡出效果
放大淡出效果
转动淡出效果1
转动淡出效果2
左上角展开淡出效果
压缩变小淡出效果
右往左推出效果
下往上推出效果
左右交错效果
放大淡出效果
缩小效果
上下交错效果

相关文章

网友评论

    本文标题:Activity常用过渡动画

    本文链接:https://www.haomeiwen.com/subject/cfwfoktx.html