在Android常見面試題中咱們會常常遇到關於動畫種類的問題。百度上也會有許多的答案。Android 平臺提供了一套完整的動畫框架,咱們最多見的答案就是分爲逐幀動畫和補間動畫這兩種。可能這也是同窗們習覺得常的答案。但是這是在Android3.0版本以前。 Android3.0之後增長了屬性動畫 Property Animation。這樣子動畫就分紅兩部分:java
Tween Animation、Frame Animation只能用於View,被歸類爲View Animation。android
Property Animation能夠定義在xml文件中,它用來在設定的時間內修改對象的屬性。例如背景顏色和alpha的值。面試
這些xml文件定義的文件路徑以下: res/animator/filename.xm框架
經常使用Java類: ValueAnimator, ObjectAnimator, or AnimatorSet.動畫
Property Animation定義在android.animation包種。spa
Property Animation的文件能夠以資源的形式引用:.net
In Java: R.animator.filenamecode
In XML: @[package:]animator/filenamexml
View Animation包含了Tween Animation、Frame Animation。對象
Tween Animation定義在xml文件中。能夠對view實現一系列的轉換,例如:移動、漸變、伸縮、旋轉。
Tween Animation只能應用於View對象,並且只支持一部分屬性,如支持縮放旋轉而不支持背景顏色的改變。並且對於Tween Animation,並不改變屬性的值,它只是改變了View對象繪製的位置,而沒有改變View對象自己,好比,你有一個Button,座標(100,100),Width:100,Height:100,而你有一個動畫使其移動(200,200),你會發現動畫過程當中觸發按鈕點擊的區域還是(100,100)-(200,200)。
幀動畫是一系列的圖片按順序顯示。
文件路徑:res/drawable/filename.xml
Property Animation、Tween Animation、Frame Animation的文件路徑都是不同的。