屏幕切換指的是在同一個(gè)Activity內(nèi)屏幕間的切換,ViewFlipper繼承了Framelayout類,ViewAnimator類的作用是為FrameLayout里面的View切換提供動(dòng)畫效果。如下動(dòng)圖:

萬碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

該類有如下幾個(gè)和動(dòng)畫相關(guān)的函數(shù):

setInAnimation:設(shè)置View進(jìn)入屏幕時(shí)候使用的動(dòng)畫,該函數(shù)有兩個(gè)版本,一個(gè)接受單個(gè)參數(shù),類型為android.view.animation.Animation;一個(gè)接受兩個(gè)參數(shù),類型為Context和int,分別為Context對象和定義Animation的resourceID。

setOutAnimation: 設(shè)置View退出屏幕時(shí)候使用的動(dòng)畫,參數(shù)setInAnimation函數(shù)一樣。

showNext: 調(diào)用該函數(shù)來顯示FrameLayout里面的下一個(gè)View。

showPrevious: 調(diào)用該函數(shù)來顯示FrameLayout里面的上一個(gè)View。

下面通過坐標(biāo)軸的形式為大家演示動(dòng)畫實(shí)現(xiàn)方式:

萬碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

由上圖可知,以屏幕左下角為數(shù)學(xué)坐標(biāo)軸的原點(diǎn),屏幕下邊框?yàn)閄軸,左邊框?yàn)閅軸,當(dāng)前屏幕顯示為圖二,如果要看圖一,則需要圖一由左至右(相對屏幕而言)進(jìn)入屏幕,圖一X軸初始坐標(biāo)為-100%p,移動(dòng)到屏幕位置時(shí)圖一X軸變?yōu)?(因?yàn)楸敬窝菔緸闄M向滑動(dòng),所以不涉及Y軸);同理圖三要進(jìn)入屏幕,則需由右至左,X軸由100%p變?yōu)?.清楚了坐標(biāo)位置,我們要實(shí)現(xiàn)四種動(dòng)畫效果,就會(huì)很簡單,下面代碼(需建立在res目錄下自建的anim文件夾下)演示四種動(dòng)畫效果:

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式