Android中Animation 详细分类
2015-03-27 19:23
176 查看
Android中Animation 详细分类
1.渐变动画
1.Alpha:透明度改变效果 2.Scale:缩放效果 3.Rotate:旋转效果 4.Translate:移动效果
2.设置动画有两种方式
xml方式添加动画1.Alpha(透明度)
xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="1000" android:fromAlpha="1.0" android:toAlpha="0" android:fillAfter="true" android:startOffset="400" android:repeatCount="3" /> </set> //通过AnimationUtils.loadAnimation(int i)方法加载xml中的动画 animation1 = AnimationUtils.loadAnimation(this, R.anim.alphaxml);
java
//透明度从1~0 animation1 = new AlphaAnimation(1, 0); //动画时长1000毫秒 animation1.setDuration(1000); //动画结束时停留在动画结束的时刻 animation1.setFillAfter(true); //动画延迟400毫秒开始 animation1.setStartOffset(400); //重复3次动画 animation1.setRepeatCount(3);
2.Scale(缩放)
xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <scale android:fromXScale="1" android:fromYScale="1" android:toXScale="0" android:toYScale="1" android:duration="1000" android:repeatCount="3" android:fillAfter="true" android:pivotY="50%" android:pivotX="50%" /> </set>
java
/** * ( float fromX, float toX, float fromY, float toY, float pivotX, float pivotY) * * float fromX 动画起始时 X坐标上的伸缩尺寸 * float toX 动画结束时 X坐标上的伸缩尺寸 * float fromY 动画起始时Y坐标上的伸缩尺寸 * float toY 动画结束时Y坐标上的伸缩尺寸 * float pivotXValue 动画相对于物件的X坐标的开始位置 * float pivotYValue 动画相对于物件的Y坐标的开始位置 */ animation1 = new ScaleAnimation(1f, 0f, 1f, 1f, 0.5f, 0.5f); //动画时长1000毫秒 animation1.setDuration(1000); //动画结束时停留在动画结束的时刻 animation1.setFillAfter(true); //重复3次动画 animation1.setRepeatCount(3);
3.rotate(旋转)
xml
<?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:duration="1000" android:repeatCount="3" /> </set>
java
/** * (float fromDegrees, float toDegrees, float pivotX, float pivotY) * * float fromDegrees动画开始的度数 * float toDegrees 动画结束的度数 * float pivotX 动画围绕的旋转的中心x * float pivotY 动画围绕的旋转的中心y */ animation1 = new RotateAnimation(0f, 360f, 0f, 0f); animation1.setDuration(1000); animation1.setFillAfter(false); animation1.setRepeatCount(3);
4.translate(移动)
xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="-500" android:toXDelta="500" android:fromYDelta="-200" android:toYDelta="200" android:duration="1500" android:fillAfter="false" android:repeatCount="3" /> </set>
java
/** * TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta) * * float fromXDelta 动画开始X轴上的位置 * float toXDelta 动画结束在X轴上的位置 * float fromYDelta 动画开始Y轴上的位置 * float toYDelta 动画结束在Y轴上的位置 */ animation1=new TranslateAnimation(-500f,500f,-200,200); animation1.setDuration(1500); animation1.setFillAfter(false);
相关文章推荐
- 【Android UI设计和开发】动画(Animation)详细说明(一)
- Android Animation动画(很详细)
- Android 用Animation-list实现逐帧动画详细步骤
- ANDROID开机动画bootanimation.zip的详细制作方法
- Android Animation动画(很详细)
- Android中Animation 详细解读
- Android Animation动画(很详细)
- Android Animation动画(超详细)
- Android Animation动画(很详细)
- Android中Animation 详细解读
- Android中Animation 详细解读
- Android Animation动画(很详细)
- Android开发之动画源码Animation详细分析
- Android—— Animation动画(很详细)
- Android Animation动画(很详细)
- Android中Animation 详细解读
- Android Animation动画(很详细)
- Android Animation动画(很详细)
- Android Animation动画(很详细)
- Android中Animation 详细解读