Android開(kāi)發(fā)之動(dòng)畫(huà)實(shí)現(xiàn)方法
本文實(shí)例講述了Android開(kāi)發(fā)之動(dòng)畫(huà)實(shí)現(xiàn)方法。分享給大家供大家參考。具體分析如下:
動(dòng)畫(huà)分為三種:
逐幀動(dòng)畫(huà)、布局動(dòng)畫(huà)和控件動(dòng)畫(huà)
控件動(dòng)畫(huà)實(shí)現(xiàn)
通過(guò)重寫(xiě)Animation的 applyTransformation (float interpolatedTime, Transformation t)函數(shù)來(lái)實(shí)現(xiàn)自定義動(dòng)畫(huà)效果,另外一般也會(huì)實(shí)現(xiàn) initialize (int width, int height, int parentWidth, int parentHeight)函數(shù),這是一個(gè)回調(diào)函數(shù)告訴Animation目標(biāo)View的大小參數(shù),在這里可以初始化一些相關(guān)的參數(shù),例如設(shè)置動(dòng)畫(huà)持續(xù)時(shí)間、設(shè)置Interpolator、設(shè)置動(dòng)畫(huà)的參考點(diǎn)等。
OPhone在繪制動(dòng)畫(huà)的過(guò)程中會(huì)反復(fù)的調(diào)用applyTransformation 函數(shù),每次調(diào)用參數(shù)interpolatedTime值都會(huì)變化,該參數(shù)從0漸變?yōu)?,當(dāng)該參數(shù)為1時(shí)表明動(dòng)畫(huà)結(jié)束。通過(guò)參數(shù)Transformation 來(lái)獲取變換的矩陣(matrix),通過(guò)改變矩陣就可以實(shí)現(xiàn)各種復(fù)雜的效果。
下面舉例說(shuō)明一個(gè)控件動(dòng)畫(huà):
Animation anim = new Animation() { @Override protected void applyTransformation(float interpolatedTime, Transformation t) { if (interpolatedTime == 1) { v.setVisibility(View.GONE); } else { v.getLayoutParams().height = initialHeight - (int)(initialHeight * interpolatedTime); v.requestLayout(); } } @Override public boolean willChangeBounds() { return true; } };
例子中,一個(gè)view的高度逐漸由原來(lái)的高度變?yōu)?。當(dāng)動(dòng)畫(huà)結(jié)束之后,view消失。
希望本文所述對(duì)大家的Android程序設(shè)計(jì)有所幫助。
- Android的Activity跳轉(zhuǎn)動(dòng)畫(huà)各種效果整理
- Android編程實(shí)現(xiàn)ImageView圖片拋物線動(dòng)畫(huà)效果的方法
- Android編程ProgressBar自定義樣式之動(dòng)畫(huà)模式實(shí)現(xiàn)方法
- Android中顯示GIF動(dòng)畫(huà)的實(shí)現(xiàn)代碼
- Android實(shí)現(xiàn)動(dòng)畫(huà)效果詳解
- android實(shí)現(xiàn)字體閃爍動(dòng)畫(huà)的方法
- Android精靈動(dòng)畫(huà)用法實(shí)例
- Android中Activity跳轉(zhuǎn)的創(chuàng)建步驟總結(jié)
- android的activity跳轉(zhuǎn)到另一個(gè)activity
- Android軟件啟動(dòng)動(dòng)畫(huà)及動(dòng)畫(huà)結(jié)束后跳轉(zhuǎn)的實(shí)現(xiàn)方法
相關(guān)文章
android實(shí)現(xiàn)添加耳機(jī)狀態(tài)圖標(biāo)的方法
這篇文章主要介紹了android實(shí)現(xiàn)添加耳機(jī)狀態(tài)圖標(biāo)的方法,較為詳細(xì)的分析了Android實(shí)現(xiàn)添加耳機(jī)圖標(biāo)的原理與相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10Android實(shí)現(xiàn)多線程下載圖片的方法
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)多線程下載圖片的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09Android 中RecycleView實(shí)現(xiàn)item的點(diǎn)擊事件
這篇文章主要介紹了Android 中RecycleView實(shí)現(xiàn)item的點(diǎn)擊事件的相關(guān)資料,需要的朋友可以參考下2017-03-03Android ExpandableListView雙層嵌套實(shí)現(xiàn)三級(jí)樹(shù)形菜單
這篇文章主要介紹了Android ExpandableListView雙層嵌套實(shí)現(xiàn)三級(jí)樹(shù)形菜單,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-1113問(wèn)13答全面學(xué)習(xí)Android View繪制
這篇文章主要為大家詳細(xì)介紹了Android View繪制,13問(wèn)13答幫助大家全面學(xué)習(xí)Android View繪制,感興趣的小伙伴們可以參考一下2016-03-03android實(shí)現(xiàn)條目倒計(jì)時(shí)功能
這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)條目倒計(jì)時(shí)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09Android應(yīng)用中使用Fragment組件的一些問(wèn)題及解決方案總結(jié)
這里我們講的Fragment主要探討的是support庫(kù)中的Fragment,包括Fragment常遇到的crash崩潰問(wèn)題,嵌套Fragment收不到onActivityResult()回調(diào)以及一些常用tips等,需要的朋友可以參考下2016-05-05