2011-08-22 32 views
2

我正在構建一個自定義ViewGroup,它將一羣兒童安排在特定的位置。在自定義ViewGroup中設置動畫的正確方法

在一個特定的觸發器(可以說一個外部按鈕按下),孩子動畫到新的位置。我嘗試這樣做的方式是啓動計時器並在每次計時器更新時計算新的位置,然後致電requestLayout()

當我這樣做時,動畫有點緊張。有沒有更有效的方法來做到這一點?

關於什麼正確的步驟是做一個自定義的子視圖重新發布的任何想法?

回答

0

您應該實現一個AnimationListener這樣的:

Animation anim = AnimationUtils.loadAnimation(R.android.anim.slide_in_left); 
anim.setAnimationListener(listener); 
view.startAnimation(anim); 

private AnimationListener imageViewAnimationListener = new AnimationListener() // 
{ 
    @Override 
    public void onAnimationEnd(Animation arg0) // 
    { 
    } 

    @Override 
    public void onAnimationRepeat(Animation arg0) // 
    { 
    } 

    @Override 
    public void onAnimationStart(Animation arg0) // 
    { 
    } 
}; 

希望這有助於!

+0

這將工作。我認爲這需要在動畫結束時與requestLayout一起調用。 – Arpit

相關問題