Android中LayoutAnimal的使用方法詳解
今天給大家講講酷炫的動(dòng)畫成員——LayoutAnimal。話不多說,直接上一個(gè)簡單的效果圖:

怎么樣,和往常自己寫的沒有動(dòng)畫效果的頁面比起來是不是更加酷炫。效果圖只展示了從右到左疊加漸變的效果,只要腦洞夠大,LayoutAnimal是可以幫你實(shí)現(xiàn)各類動(dòng)畫的。接下來就讓我們看看LayoutAnimal如何實(shí)現(xiàn)這樣的效果。
首先,新建一個(gè)XML動(dòng)畫文件slide_from_right.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="600">
<translate
android:fromXDelta="100%p"
android:interpolator="@android:anim/decelerate_interpolator"
android:toXDelta="0" />
<alpha
android:fromAlpha="0.5"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:toAlpha="1" />
</set>set標(biāo)簽下由translate(移動(dòng))和alpha(漸變)動(dòng)畫組成。
其中translate(移動(dòng))動(dòng)畫由100%p移動(dòng)到0。這里需要注意使用的是100%p,其中加這個(gè)p是指按父容器的寬度進(jìn)行百分比計(jì)算。插值器就根據(jù)自己想要的效果設(shè)置,這里使用了一個(gè)decelerate_interpolator(減速)插值器。
第二個(gè)動(dòng)畫是alpha(漸變)動(dòng)畫,由半透明到不透明,其中插值器是先加速后減速的效果。
接著我們還需要?jiǎng)?chuàng)建一個(gè)layoutAnimation,其實(shí)也是一個(gè)XML文件layout_slid_from_right.xml:
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:animation="@anim/slide_from_right"
android:animationOrder="normal"
android:delay="15%"/>其中animation指定的就是我們創(chuàng)建的第一個(gè)xml文件。animationOrder是指動(dòng)畫執(zhí)行的順序模式,包含normal, reverse 和random。normal就是從上到下依次進(jìn)行,reverse根據(jù)名字就知道是反序,random那當(dāng)然是隨機(jī)了,我們就使用mormal即可。delay則是每個(gè)子視圖執(zhí)行動(dòng)畫的延遲比例,這里需要注意的是這是相對于上個(gè)子視圖執(zhí)行動(dòng)畫延時(shí)比例。
最后我們只需要在咱們的ViewGroup中設(shè)置layoutAnimation屬性即可:
android:layoutAnimation="@anim/layout_slid_from_right"
當(dāng)然也可在代碼中手動(dòng)設(shè)置:
val lin = findViewById<LinearLayout>(R.id.linParent) val resId = R.anim.layout_slid_from_right lin.layoutAnimation = AnimationUtils.loadLayoutAnimation(lin.context, resId)
總結(jié):
- layoutAnimation可以使用在任何一個(gè)ViewGroup上
- 在使用set標(biāo)簽做動(dòng)畫疊加的時(shí)候一定要注意,set標(biāo)簽內(nèi)需要添加duration屬性,也就是動(dòng)畫時(shí)間。如果不加動(dòng)畫是沒有效果的。
- 使用移動(dòng)動(dòng)畫時(shí),在百分比后面添加p的意思是基于父容器寬度進(jìn)行百分比計(jì)算
以上便是LayoutAnimal的簡單使用,只要你腦洞大開,各種各樣的效果都能玩出來。實(shí)現(xiàn)起來也很簡單,趕緊在項(xiàng)目中使用起來吧。
到此這篇關(guān)于Android中LayoutAnimal的作用詳解的文章就介紹到這了,更多相關(guān)Android LayoutAnimal作用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android中Handler實(shí)現(xiàn)倒計(jì)時(shí)的兩種方式
本篇文章主要介紹了Android中Handler實(shí)現(xiàn)倒計(jì)時(shí)的兩種方式,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07
Android開發(fā)Kotlin語言協(xié)程的依賴及使用示例
這篇文章主要為大家介紹了Android開發(fā)Kotlin語言協(xié)程的依賴及使用示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
Android音樂播放器制作 點(diǎn)擊歌曲實(shí)現(xiàn)播放(二)
這篇文章主要為大家詳細(xì)介紹了Android音樂播放器的制作方法,點(diǎn)擊歌曲實(shí)現(xiàn)播放,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02
iOS開發(fā)中TableView類似QQ分組的折疊與展開效果
這篇文章主要介紹了iOS開發(fā)中TableView類似QQ分組的折疊與展開效果,其實(shí)要做這個(gè)效果我先想到的是在tableView中再嵌套多個(gè)tableView。下面通過本文給大家分享實(shí)現(xiàn)思路,需要的朋友可以參考下2016-12-12
Android應(yīng)用開發(fā)中使用GridView網(wǎng)格布局的代碼示例
GridView布局比較基礎(chǔ),可以取代已經(jīng)逐漸淡出人們視線的TableLayout,這里我們就來看一下Android應(yīng)用開發(fā)中使用GridView網(wǎng)格布局的代碼示例:2016-06-06
Android Kotlin環(huán)境使用ButterKnife的方法
本篇文章主要介紹了Android Kotlin環(huán)境使用ButterKnife的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
Android實(shí)現(xiàn)長按圖片保存至相冊功能
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)長按圖片保存至相冊功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Android實(shí)現(xiàn)電池管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)電池管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01

