安卓动画小结

最近做项目接触到动画,就把自己了解到的分享记录下:

1.关于页面跳转的动画

res新建文件夹Directory---anim

<alpha
        android:fromAlpha="0"属性为动画起始时透明度
        android:toAlpha="1"属性为动画结束时透明度
        android:duration="8000"持续的时间
        />
<alpha
        android:fromAlpha="1"
        android:toAlpha="0"
        android:duration="8000"
        />

跳转的时候把动画带上就行

        Intent intent=new Intent(this,Activity.class);
        startActivity(intent);
        //实现activity之间切换动画效果
        //第1个参数:打开新activity的动画,第2个参数:当前activity退出时的动画
        this.overridePendingTransition(R.anim.alp1,R.anim.alp2);

2.关于经常用到的动画 下面做个总结 可以直接用

//透明
<!--1开始2结束3持续时间-->
    <alpha
        android:fromAlpha="0"   android:toAlpha="1.0"   //起始--结束
        android:duration="8000"
        />
//平移
<translate
        android:fromXDelta="0"  android:fromYDelta="0"  //起始坐标
        android:toXDelta="150" android:toYDelta="150"    //结束坐标
        android:duration="8000"                          
        />
//缩放
<scale
        android:fromXScale="1.0" android:fromYScale="1.0"  
        android:toXScale="5.0" android:toYScale="5.0"
        android:pivotX="50%" android:pivotY="50%"       //中心点
        android:duration="9000"
        />
//旋转
<rotate
        android:fromDegrees="0"        //初始角度
        android:toDegrees="3600"    //旋转多少度
        android:pivotY="50%"        //中心
        android:pivotX="50%"
        android:duration="8000"
        />

用法:以平移为例

   private void pinyi(){
        Animation ation= AnimationUtils.loadAnimation(this,R.anim.pinyi);//动画方法
        iv.startAnimation(ation);//执行
        ation.setFillAfter(true);//保持效果
    }

3.代码设置动画(我遇到的总,不需要资源文件实现简单动画)

1.
//
直接就平移旋转简单粗暴
all_anim.animate().translationY(
-300).setDuration(3000).rotation(200).start(); 2. //从当前位置,向下和向右各平移300px TranslateAnimation animation = new TranslateAnimation(0.0f, 0.0f, 0.0f, -300.0f); animation.setDuration(3000); re_all_anim.startAnimation(animation); animation.setFillAfter(true); 3. //第1个参数:开始时状态,第2个参数:旋转后角度,第3个参数:X轴以自身为参考点 //第4个参数:X轴旋转中心,第5个参数:Y轴以自身为参考点,第6个参数:Y轴旋转中心 Animation animation=new RotateAnimation(0,270,Animation.RELATIVE_TO_SELF,0.5f, Animation.RELATIVE_TO_SELF,0.5f); animation.setDuration(5000);//旋转持续时间 animation.setFillAfter(true);//动画结束后会停留在结束时的状态 imageView= (ImageView) findViewById(R.id.imageView); imageView.startAnimation(animation);

磊磊tua

原文地址:https://www.cnblogs.com/widgetbox/p/9243702.html