Android View动画

平移动画

1.xml方式,在res下新建anim的文件夹



2.代码

    public void TransAnim(View view){
        Animation animation = AnimationUtils.loadAnimation(this, R.anim.trans_anim);
        mTextView.startAnimation(animation);
    }

3.效果
toXDelta和toYDelta如果为数值80时表示向右和向下同时平移80px


Android View动画_第1张图片
ezgif-4-d8cd66a3b9.gif


toXDelta和toYDelta如果数值后面加上%号表示移动的距离为该控件宽高的百分之多少,如180%为控件的1.8倍宽度的距离


Android View动画_第2张图片
ezgif-4-0362cdc727.gif


toXDelta和toYDelta如果数值后面加上%p表示移动的距离为父控件宽高的百分之多少,如50%p为父控件的0.5倍宽度的距离


Android View动画_第3张图片
ezgif-4-d2ffbfd16d.gif

透明度动画




    public void TransAnim(View view){
       Animation animation = AnimationUtils.loadAnimation(this, R.anim.alpha_anim);
        mTextView.startAnimation(animation);
    }

fromAlpha="1"和toAlpha="0.3"表示从透明度从100%到30%


Android View动画_第4张图片
ezgif-4-19391dc1b2.gif

缩放动画




      public void ScaleAnim(View view){
        Animation animation = AnimationUtils.loadAnimation(this, R.anim.scale_anim);
        mTextView.startAnimation(animation);
    }

缩放动画中2个属性pivotX和pivotY,为pivotX数值30时表示从该控件最左边加30px的位置开始缩放,pivotY的意义也一样




Android View动画_第5张图片
ezgif-4-a4aa28590b.gif

pivotX数值为50%时表示从控件的宽度的50%的位置开始缩放,pivotY的意义也一样




Android View动画_第6张图片
ezgif-4-5f8a803c08.gif

pivotX数值为50%p时表示从该控件的最左边加上父控件宽度的50%的位置开始缩放,pivotY的意义也一样




Android View动画_第7张图片
ezgif-4-da8568ad34.gif

旋转动画

   public void RotateAnim(View view){
        Animation animation = AnimationUtils.loadAnimation(this, R.anim.rotate_anim);
        mTextView.startAnimation(animation);
    }

缩放动画和旋转动画一样都可以设置pivotX和pivotY,意义一样




Android View动画_第8张图片
ezgif-4-da621ca649.gif



Android View动画_第9张图片
ezgif-4-2e8880df32.gif

Set

当我们希望几组动画一起播放时就需要set标签




    
    

    
    

    
    


    public void SetAnim(View view){
        Animation animation = AnimationUtils.loadAnimation(this, R.anim.set_anim);
        mTextView.startAnimation(animation);
    }
Android View动画_第10张图片
ezgif-4-c2012ef19e.gif

android:duration 动画持续时间,以毫秒为单位
android:fillAfter 如果设置为true,控件动画结束时,将保持动画最后时的状态
android:fillBefore 如果设置为true,控件动画结束时,还原到开始动画前的状态
android:fillEnabled 与android:fillBefore 效果相同,都是在动画结束时,将控件还原到初始化状态
android:repeatCount 重复次数
android:repeatMode 重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重新放一遍,必须与repeatCount一起使用才能看到效果。因为这里的意义是重复的类型,即回放时的动作。

OK,以上关于view动画使用xml方式的基本使用。

你可能感兴趣的:(Android View动画)