安卓的Tween Animation分為4種動畫效果,分別是:alpha (透明變化) translate(位置移動) scale(縮放) rotate(旋轉(zhuǎn)),
關(guān)于安卓的TranslateAnimation的使用
。其中Translate動畫就是定義一個開始的位置和一個結(jié)束位置,定義移動時間,然后就能自動產(chǎn)生移動動畫,實現(xiàn)控件的動態(tài)位移。Android的translate移動方向有 橫向(X) 豎向(Y)
TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta)
參數(shù)說明如下:
float fromXDelta 動畫開始的點離當前View X坐標上的差值
float toXDelta 動畫結(jié)束的點離當前View X坐標上的差值
float fromYDelta 動畫開始的點離當前View Y坐標上的差值
float toYDelta 動畫開始的點離當前View Y坐標上的差值
要注意的是參數(shù)fromXDelta指的是開始動畫時的點的X坐標相對于View初始位置時X坐標的偏移量,例如一開始設(shè)置View的X坐標為3,經(jīng)過第一次動畫移動到X坐標為10的位置,當進行第二次動畫時,參數(shù)fromXDelta指的是第二次動畫開始的點的坐標相對于初始位置(X坐標為3)的偏移量,而不是相對于第一次移動過后(X坐標為10)的偏移量;Y坐標的偏移量也是如此,
電腦資料
《關(guān)于安卓的TranslateAnimation的使用》(http://www.msguai.com)。如果不注意這點,當進行多次動畫時將會發(fā)生錯誤移動。示例代碼:
Animation animation = new TranslateAnimation(10f,100f,0,0);//平移動畫
animation.setFillAfter(true);//動畫終止時停留在最后一幀,不然會回到?jīng)]有執(zhí)行前的狀態(tài)
animation.setDuration(200);//動畫持續(xù)時間0.2秒
imageview.startAnimation(animation);//是用ImageView來顯示動畫的