美文网首页
Android 几种动画总结

Android 几种动画总结

作者: 李广凯 | 来源:发表于2019-10-17 18:29 被阅读0次

四种基本动画

透明度渐变动画(AlphaAnimation)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <alpha
        //控制动画变化速度
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        //指定动画重复方式
        android:repeatMode ="reverse"
        //指定动画重复次数
        android:repeatCount="1"
        //指定动画播放时长
        android:duration="1000"
        //指定结束时view的透明度
        android:fromAlpha="1.0"
        //指定开始时view的透明度
        android:toAlpha="0.0" />
</set>

旋转动画(RotateAnimation)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate
        //指定开始时的角度
        android:fromDegrees="0"
        //指定结束时的角度
        android:toDegrees="360"
        //指定旋转点坐标
        android:pivotX="50%"
        android:pivotY="50%"
        //重复方式
        android:repeatMode ="reverse"
        //重复次数
        android:repeatCount = "1"
        //播放时长
        android:duration="1000"/>
</set>

缩放动画(ScaleAnimation)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <scale
        //开始时xy轴的缩放系数,1.0表示不变化
        android:fromXScale="1.0"
        android:fromYScale="1.0"
        //结束时xy轴的缩放系数
        android:toXScale="0.5"
        android:toYScale="0.5"
        //指定缩放点xy坐标
        android:pivotY="50%"
        android:pivotX="50%"
        //重复方式
        android:repeatMode ="reverse"
        //重复次数
        android:repeatCount = "1"
        //播放时长
        android:duration = "3000"/>
</set>

平移动画(TranslateAnimation)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
   <translate
       //开始时xy轴的坐标
       android:fromXDelta="0.0"
       android:fromYDelta="0.0"
       //结束时xy轴的坐标
       android:toXDelta="100"
       android:toYDelta="0.0"
       //重复方式
       android:repeatMode= "reverse"
       //重复次数
       android:repeatCount = "1"
       //播放时长
       android:duration="3000"/>
</set>

Activity与Activity 的切换动画

进入动画

@Override
    public void startActivity(Intent intent) {
        super.startActivity(intent);
        overridePendingTransition(R.anim.activity_in,R.anim.activity_out);
    }

退出动画

@Override
    public void finish() {
        super.finish();
        overridePendingTransition(R.anim.activity_in,R.anim.activity_out);
    }

Activity向Fragment的跳转动画

      getSupportFragmentManager()
              .beginTransaction()
              .setCustomAnimations(R.anim.alpha_animation, R.anim.rotate_animation)
              .replace(R.id.maincontent, new Fragment_1())
              .commit();

单个控件的动画

Animation alhpa = AnimationUtils.loadAnimation(getActivity(),R.anim.alpha_animation);

textView.startAnimation(alhpa);

相关文章

网友评论

      本文标题:Android 几种动画总结

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