動畫 補間動畫

2021-07-15 15:57:12 字數 3666 閱讀 7098

translateanimation(平移動畫)

1.1靜態實現

1.1.1 res/anim在該資料夾中建立動畫的xml資源檔案

動畫資源檔案中設定xy方向上的距離時,可以設定畫素值,也可以設定百分比

translate xmlns:android=""

android:fromxdelta="0"

android:toxdelta="500"

android:fromydelta="0"

android:toydelta="0"

android:duration="2000"

android:repeatcount="infinite"

android:repeatmode="reverse"

通過引入xml檔案的方式載入乙個動畫

translateanimation animation = (translateanimation)

animationutils.loadanimation(this, r.anim

.translate);

讓動畫動起來

animation.start();

把平移動畫和iv物件進行繫結

iv.setanimation(animation);

1.2 動態的新增動畫

12.1建立translateanimation的類拿到他的物件

int fromxtype, float fromxvalue, int toxtype, float toxvalue,

int fromytype, floatfromyvalue, int toytype, float toyvalue

int fromxtype :x座標起始位置的型別 (1、相對自己,2相對父布局,3 絕對位置)

float fromxvalue :x座標起始位置的值

translateanimation animation = new translateanimation(

animation.relative_to_self, 0f,

animation.relative_to_self, 1f,

animation.relative_to_self, 0f,

animation.relative_to_self, 0f

1.2.2 設定各種屬性

設定動畫重複的次數

animation.setrepeatcount(animation.infinite);

設定動畫,單次執行的時間

animation.setduration(2000);

設定動畫執行的模式,(animation.reverse,重複,animation.restart往返)

animation.setrepeatmode(animation.restart);

開始動畫

animation.start();

讓iv實現動畫效果

iv.setanimation(animation);

1.3 其他三種動畫的實現與平移動畫的過程一樣,只不過需要使用相對應的類,

設定對應的屬性值

scaleanimation(縮放動畫)

rotateanimation(旋轉動畫)

alphaanimation(透明度動畫)

1.4 使用組合動畫

1.4.1通過xml資源檔案把多個動畫節點放在anim資料夾下的節點中

set xmlns:android=""

android:duration="2000"

android:repeatcount="infinite"

android:repeatmode="restart">

**translate**

android:duration="3000"

android:fromxdelta="0"

android:repeatcount="infinite"

android:toxdelta="300" />

**rotate**

android:fromdegrees="0"

android:todegrees="360"

android:repeatcount="infinite"

android:pivoty="50%"

android:pivotx="50%"

set>

使用animation的類來載入動畫

animation animation = animationutils.loadanimation(this,r.anim

.set_animat);

animation.start();

iv.setanimation(animation);

補間動畫的應用

2.1從乙個activity跳轉到另乙個activity的動畫

2.1.1 一部分是第乙個activity退出時的動畫;另外一部分是第二個activity進入時的動畫;

在android的2.0版本之後,有了乙個函式來幫我們實現這個動畫。

這個函式就是 overridependingtransition

這個函式有兩個引數,乙個引數是第乙個activity進入時的動畫,另外乙個引數則是第二個activity退出

時的動畫。

這裡需要特別說明的是,關於overridependingtransition這個函式,有兩點需要主意

1.它必需緊挨著startactivity()或者finish()函式之後呼叫」

2.它只在android2.0以及以上版本上適用

translate_in.xml

translate xmlns:android=""

android:fromxdelta="100%"

android:toxdelta="0"

android:duration= "2000"

/>

translate_out.xml

translate xmlns:android=""

android:fromxdelta="0"

android:toxdelta="-100%"

android:duration= "2000"

/>

intent intent = new intent(mainactivity.this, tweenanimactivity.class);

startactivity(intent);

新增activity跳轉時的動畫效果

overridependingtransition(r.anim

.tran_in,r.anim

.tran_out);

退出時的動畫的**:

public

boolean

onkeydown(int keycode, keyevent event)

return

super.onkeydown(keycode, event);

}

android動畫之補間動畫

補間動畫 移動補間動畫,縮放補間動畫,旋轉補間動畫,透明補間動畫 1.移動補間動畫 translateanimation 指定移動的絕對位置 以自己的左上角為參照點 translateanimation translateanimation new translateanimation 0,0,0,...

Android動畫 補間 Tween 動畫

android動畫的兩種方式,其中幀動畫上篇文章已經講了,這次主要講解的就是補間動畫,補間動畫就是動畫業務場景中常用的旋轉,平移,縮放,和漸變效果,幀動畫是通過輪播動畫實現動畫效果,補間動畫通過在兩個關鍵幀之間補充漸變的動畫效果來實現的,相對而言補間動畫的暫用的空間更小,補間動畫有兩種方式,一種是直...

幀動畫,補間動畫,和屬性動畫

幀動畫 frameanimation 多張快速切換,形成動畫效果 幀動畫使用xml定義.建立乙個folder在res下,然後定義乙個xml檔案,根節點是animation list.將素材複製到drawable hdpi資料夾下作為資源id.android oneshot true drawable...