安卓动画小结
最近做项目接触到动画,就把自己了解到的分享记录下:
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