動(dòng)畫的實(shí)質(zhì)是什么,? android動(dòng)畫實(shí)現(xiàn)機(jī)制 android動(dòng)畫實(shí)現(xiàn)以及編寫方法1. 分類 Property Animation 3.0以上 api 11 ViewAnimation ObjectAnimation View Animation -- TweenAnimation 漸變動(dòng)畫 alpha animation 旋轉(zhuǎn)動(dòng)畫 rotate animation 縮放動(dòng)畫 scale animation 位移動(dòng)畫 translate animation Drawable Animation -- FrameAnimation 2. Android 動(dòng)畫實(shí)現(xiàn)原理 動(dòng)畫運(yùn)行模式 獨(dú)占模式 中斷模式 Animation 類 每個(gè)動(dòng)畫都重載了父類的applyTransformation方法,, 這個(gè)方法會(huì)被父類的getTransformation方法調(diào)用。 另外每個(gè)動(dòng)畫還有個(gè)initialize方法,, 完成初始化工作,。 Interpolater類 Transformation類
Transformation記錄了仿射矩陣Matrix, 動(dòng)畫每觸發(fā)一次, 會(huì)對原來的矩陣做一次運(yùn)算,, View的Bitmap與這個(gè)矩陣相乘就可以實(shí)現(xiàn)相應(yīng)的操作(旋轉(zhuǎn),, 平移, 縮放等),。 Transformation類封裝了矩陣和alpha值,, 他有兩個(gè)重要的成員, 一個(gè)是mMatrix,, 另一個(gè)是mAlpha,。Android動(dòng)畫實(shí)現(xiàn)原理 圖形變換通過矩陣實(shí)現(xiàn)。 圖形變換是圖形學(xué)中的基本知識(shí)。 簡單來說就是,, 每種變換都是一次矩陣運(yùn)算,。 在Android中, canvas類中包含當(dāng)前矩陣,, 當(dāng)調(diào)用Canvas.drawBitmap(bmp, x, y, Paint)繪制時(shí),, android會(huì)先把bmp做一次矩陣運(yùn)算, 然后將運(yùn)算的結(jié)果顯示在Canvas上,。 這樣,, 編程人員只需不斷的修改Canvas的矩陣并刷新屏幕, View里的對象就會(huì)不停的做圖形變換,, 動(dòng)畫就形成了,。 Activity動(dòng)畫效果 1. 修改Activity Theme 使用代碼設(shè)定 |
|