Android的Animation的onAnimationXXX/onAnimationXXX和Listener.onXXX回撥函式呼叫順序
阿新 • • 發佈:2019-01-30
在做View的Animation的時候,我們通常需要在動畫的啟動和結束時,加一些控制。Android提供了兩種方式供我們使用
◆過載View的onAnimationStart和onAnimationEnd
這兩個函式都沒有引數,代表的是當前的Animation的啟動和結束。
◆使用動畫監聽器。即實現AnimationListener介面。這個介面也有兩個函式onAnimationStart和onAnimationEnd。不同的是,這兩個函式中帶有一個引數Anmation。代表的是當前結束的是哪個動畫。當你為多個動畫設定同一個監聽器時,就可以用這個引數來進行區分。
二者呼叫順序:啟動時View.onAnimationStart()->AnimationListener.onAnimationStart
結束時AnimationListener.onAnimationEnd->View.onAnimationEnd()
你可以再任何一個類中實現AnimationListerner,並把他設定為某些動畫的監聽器。另外,如果你在AnimationListener的回撥函式中進行介面更新的操作,有時候會出現螢幕的閃爍。您只有在View的onAnimationStart/End中進行類似的操作了。具體為什麼會閃爍。不詳。有人若知道,請告訴我。