屬性動(dòng)畫類似于跟看電影一樣,都是多張圖片想虎,一貞一貞展現(xiàn)出來卦尊。可以配置在xml里面舌厨,通過每貞圖片停留時(shí)間長短岂却,結(jié)合在一起組成動(dòng)畫,下面是button里面有個(gè)圖片做廣播播放的效果裙椭,以及imageview不斷點(diǎn)擊變化各種動(dòng)畫效果
示例一(button左邊的小喇叭)
因?yàn)樾±仁侵苯油ㄟ^button的一個(gè)屬性放進(jìn)去躏哩,button我們設(shè)置背景后(這里是給了一個(gè)選擇器),那么再給drawableStart設(shè)置的時(shí)候是直接通過xml給一個(gè)屬性動(dòng)畫.
在Activity調(diào)用
getCompoundDrawables()是返回的0揉燃,1扫尺,2,3分別代表左上右下炊汤,因?yàn)槲襵ml里面設(shè)定的button內(nèi)部圖片在左邊正驻,因此取0.另外一個(gè)取到這個(gè)0位置(左邊圖片)如果不是普通的drawble而是屬性動(dòng)畫,那么應(yīng)該要強(qiáng)轉(zhuǎn)成AnimationDrawable婿崭。
再通過start stop方法取開始與暫停拨拓。animationDrawable.selectDrawable(0)代表暫停了之后把屬性動(dòng)畫里面第一個(gè)標(biāo)簽的圖片直接設(shè)為背景。
示例二(下方imageview動(dòng)畫的變化)
Acvitivy中調(diào)用
這里示例了三個(gè)狀態(tài)氓栈,連續(xù)點(diǎn)擊可以切換不同的動(dòng)畫效果渣磷。分別展示了動(dòng)態(tài)替換動(dòng)畫(setImageDrawable)和替換固定圖片(setImageResource),最后的readState==READING_RESULT結(jié)束是要需要判斷一下當(dāng)前是否還是動(dòng)畫授瘦,如果是就要停止醋界,然后再上 一張固定的照片竟宋。
本人最近也在重溫各種動(dòng)畫以及自定義View。把一些常見的示例做個(gè)記錄吧形纺。后續(xù)會把demo里面所有的代碼貼出來.