android动画文档,Android 动画系统汇总
Android動畫系統的種類:
1. 屬性動畫 (Property Animation)
2. 補間動畫 (Tween Animation)
3. 幀動畫 ? ? (Frame Animation)
4. Drawable
屬性動畫(Property Animation):
可以改變控件對象屬性的對象,譬如控件的位置,透明度,旋轉等。
包含兩個基本的Animator:
1.ValueAnimator : 提供一個動畫時序引擎,用來計算動畫時序內,動畫的值。使用方式:
private void valueAnimatorTest(final View view) {
ValueAnimator anim = new ValueAnimator(); //創建ValueAnimator
anim.setDuration(2000);? // 設置動畫時常
anim.setObjectValues(new My()); //設置自定義初始值
anim.setEvaluator(new TypeEvaluator() {
@Override
public My evaluate(float fraction, My startValue, My endValue) {
System.out.println("fraction = " + fraction);
// fraction:動畫執行時間片段
My my = new My();? // My是一個實體類,可以自定義View的各個屬性值
return my;
}
});
anim.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
My value = (My)valueAnimator.getAnimatedValue(); // 得到當前動畫片段的計算的自定義值,用來改變控件的屬性
}
});
anim.start();
}
2. ObjectAnimator:是ValueAnimator的子類,這里對屬性進行了一層邏輯實現,使用者可以直接通過動畫改變控件屬性。translationX、translationY ? ? ? ? ? ?控制View相對于父布局平移距離
rotation、rotationX、rotationY ? ? 控制旋轉
scaleX、scaleY ? ? ? ? ? ? ? ? ? ? ? ? ? ?控制X 、Y軸方向的縮放
pivotX、pivotY ? ? ? ? ? ? ? ? ? ? ? ? ? ? 縮放和旋轉的支點,默認為View的中心
alpha ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?透明度(0~1)
x、y ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?在父控件中的位置(注意和translationX、translationY的區分)使用方式:
1. 控制單個屬性動畫
ObjectAnimator anim = ObjectAnimator.ofFloat(view, "scaleX", 1.0F,? 0.0F).setDuration(500);
anim.start();
2. 控制多個屬性動畫
ObjectAnimator anim = ObjectAnimator.ofFloat(view, "anywords", 1.0F,? 0.0F).setDuration(500);
anim.addUpdateListener(new AnimatorUpdateListener(){
@Override
public void onAnimationUpdate(ValueAnimator animation){
float cVal = (Float) animation.getAnimatedValue();
view.setAlpha(cVal);
view.setScaleX(cVal);
view.setScaleY(cVal);
}
}
anim.start();
補間動畫 (Tween Animation)
比較簡單,與屬性動畫相比,只能改變控件的顯示狀態,不能實際改變控件屬性值,主要有四中:
1. ScaleAnimation
2. RotateAnimation
3. AlphaAnimation
4. TranslateAnimation
補間動畫相對簡單,具體實現方式可參考其構造方法即可。
幀動畫? ? (Frame Animation)
顧名思義,就是與電影的播放原理一樣,逐幀顯示圖片達到動畫的效果,實現方式:
1. 在res目錄下建立 drawable 文件夾
2. 在drawable文件夾目錄下創建? frame.xml 文件
3. frame.xml文件格式
4. 應用在ImageView中
....
android:src = "@drawable/frame"
/>
5.? 代碼啟動動畫AnimationDrawable animationDrawable = (AnimationDrawable) view.getDrawable();
animationDrawable.start();
總結
以上是生活随笔為你收集整理的android动画文档,Android 动画系统汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三间别墅入户做多少尺寸合适?
- 下一篇: android studio json插