Android 補間動畫

補間動畫(Tween Animation)

補間動畫與逐幀動畫在本質上是不同的,逐幀動畫通過連續播放圖片來模擬動畫的效果,而補間動畫則是通過在兩個關鍵幀之間補充漸變的動畫效果來實現的。補間動畫的優點是可以節省空間。目前Android應用框架支持的補間動畫效果有以下5種。具體實現在android.view.animation類庫中。

AlphaAnimation:透明度(alpha)漸變效果,對應標簽。

TranslateAnimation:位移漸變,需要指定移動點的開始和結束坐標,對應標簽。

ScaleAnimation:縮放漸變,可以指定縮放的參考點,對應標簽。

RotateAnimation:旋轉漸變,可以指定旋轉的參考點,對應標簽。

AnimationSet:組合漸變,支持組合多種漸變效果,對應標簽。

補間動畫的效果同樣可以使用XML語言來定義,這些動畫模板文件通常會被放在Android項目的res/anim/目錄下。

1.Animationanimation=AnimationUtils.loadAnimation(this,

2.R.anim.rotate_demo);

3.imageView.startAnimation(animation);

 

1.xmlns:android="https://schemas.android.com/apk/res/android"</alpha

2.android:interpolator="@android:anim/accelerate_decelerate_interpolator"

3.android:fromAlpha="1.0"

4.android:toAlpha="0.1"

5.android:duration="2000"/>

6.<!–

7.fromAlpha:起始透明度

8.toAlpha:結束透明度

9.1.0表示完全不透明

10.0.0表示完全透明

11.–>

1.<rotatexmlns:android=”https://schemas.android.com/apk/res/android”

2.android:interpolator=”@android:anim/accelerate_decelerate_interpolator”

3.android:fromDegrees=”0″

4.android:toDegrees=”360″

5.android:duration=”1000″

6.android:repeatCount=”1″

7.android:repeatMode=”reverse”/>

8.<!–

9.fromDegrees:表示旋轉的起始角度

10.toDegrees:表示旋轉的結束角度

11.repeatCount:旋轉的次數默認值是0代表旋轉1次如果值是repeatCount=4旋轉5次,值為-1或者infinite時,表示補間動畫永不停止

12.repeatMode設置重復的模式。默認是restart。當repeatCount的值大於0或者為infinite時才有效。

13.repeatCount=-1或者infinite循環瞭

14.還可以設成reverse,表示偶數次顯示動畫時會做與動畫文件定義的方向相反的方向動行。

15.–>

1.<scalexmlns:android=”https://schemas.android.com/apk/res/android”

2.android:interpolator=”@android:anim/accelerate_interpolator”

3.android:fromXScale=”0.2″

4.android:toXScale=”1.5″

5.android:fromYScale=”0.2″

6.android:toYScale=”1.5″

7.android:pivotX=”50%”

8.android:pivotY=”50%”

9.android:duration=”2000″/>

10.

11.<!–

12.fromXScale:表示沿著x軸縮放的起始比例

13.toXScale:表示沿著x軸縮放的結束比例

14.

15.fromYScale:表示沿著y軸縮放的起始比例

16.toYScale:表示沿著y軸縮放的結束比例

17.

18.圖片中心點:

19.android:pivotX=”50%”

20.android:pivotY=”50%”

21.

22.–>

1.<translate</translatexmlns:android="https://schemas.android.com/apk/res/android"

2.android:interpolator="@android:anim/accelerate_decelerate_interpolator"

3.android:fromXDelta="0"

4.android:toXDelta="320"

5.android:fromYDelta="0"

6.android:toYDelta="0"

7.android:duration="2000"/>

8.

9.<!–

10.android:interpolator動畫的渲染器

11.1、accelerate_interpolator(動畫加速器)使動畫在開始的時候最慢,然後逐漸加速

12.2、decelerate_interpolator(動畫減速器)使動畫在開始的時候最快,然後逐漸減速

13.3、accelerate_decelerate_interpolator(動畫加速減速器)

14.中間位置分層:使動畫在開始的時候最慢,然後逐漸加速

15.使動畫在開始的時候最快,然後逐漸減速結束的位置最慢

16.fromXDelta動畫起始位置的橫坐標

17.toXDelta動畫起結束位置的橫坐標

18.fromYDelta動畫起始位置的縱坐標

19.toYDelta動畫結束位置的縱坐標

20.duration動畫的持續時間

21.–>

1.<setxmlns:android=”https://schemas.android.com/apk/res/android”

2.android:interpolator=”@android:anim/decelerate_interpolator”

3.android:shareInterpolator=”true”>

4.

5.<scale

6.android:duration=”2000″

7.android:fromXScale=”0.2″

8.android:fromYScale=”0.2″

9.android:pivotX=”50%”

10.android:pivotY=”50%”

11.android:toXScale=”1.5″

12.android:toYScale=”1.5″/>

13.

14.<rotate

15.android:duration=”1000″

16.android:fromDegrees=”0″

17.android:repeatCount=”1″

18.android:repeatMode=”reverse”

19.android:toDegrees=”360″/>

20.

21.<translate

22.android:duration=”2000″

23.android:fromXDelta=”0″

24.android:fromYDelta=”0″

25.android:toXDelta=”320″

26.android:toYDelta=”0″/>

27.

28.

29.android:duration=”2000″

30.android:fromAlpha=”1.0″

31.android:toAlpha=”0.1″/>

32.

33.

34.

35.

北京假體隆鼻:https://www.fnxyey.com/

–>

You May Also Like