當(dāng)viewgroup發(fā)生變化的時(shí)候可以自動(dòng)的添加動(dòng)畫(huà)效果。
給viewgroup在xml設(shè)置android:animateLayoutChanges="true"即可,
此時(shí)顯示的是系統(tǒng)自帶的默認(rèn)動(dòng)畫(huà)效果,如果覺(jué)得不好看,也可以自定義,下面介紹一下自定義動(dòng)畫(huà)效果的實(shí)現(xiàn)方法:
想看原版的可以去官網(wǎng):
https://developer.android.com/reference/android/animation/LayoutTransition.html
Android中提供了四種容器動(dòng)畫(huà):
1、APPEARING: 動(dòng)畫(huà)所運(yùn)行的viewgroup出現(xiàn)在這個(gè)容器中時(shí),即:view顯示時(shí)的動(dòng)畫(huà)
2、CHANGE_APPEARING: 由于在這個(gè)容器總新增加了一個(gè)view,而導(dǎo)致原來(lái)的view位置發(fā)生改變所以會(huì)觸發(fā)這個(gè)動(dòng)畫(huà)。
3、DISAPPEARING: view在這個(gè)容器中消失時(shí)觸發(fā)的動(dòng)畫(huà)
4、CHANGE_DISAPPEARING: 由于在這個(gè)容器中移除了一個(gè)view,而導(dǎo)致原來(lái)的view位置發(fā)生改變所以會(huì)觸發(fā)這個(gè)動(dòng)畫(huà)。
使用的步驟:
1、創(chuàng)建LayoutTransition對(duì)象mTransitioner
2、創(chuàng)建動(dòng)畫(huà)
3、在xml文件中將相應(yīng)布局的屬性android:animateLayoutChanges="true"設(shè)置為true
4、將動(dòng)畫(huà)通過(guò)mTransitioner的setAnimator方法設(shè)置給mTransitioner
5、通過(guò)布局控件的setLayoutTransition方法將mTransitioner設(shè)置進(jìn)去