2011-05-30 82 views
2

我有一個自定義3d翻轉需要獲取根視圖以訪問翻轉的兩個視圖,如下所示:v.startAnimation(new Flip3D(v));如何在佈局動畫結束時觸發動畫

然後,我有一個GridLayoutAnimationController的網格佈局,加載一個簡單的縮放動畫。

我想要的是當佈局動畫結束時觸發每個孩子的3D翻轉。

可能嗎?我如何獲得已結束動畫的視圖以啓動三維動畫?

我試着將一個動畫監聽器附加到縮放動畫並計算onAnimationEnd被調用的次數。每當網格視圖完成動畫時,我訪問該位置的網格子節點以開始3D翻轉動畫,但是它不起作用。

有什麼想法?

+1

如果你可以發佈您的Flip3D代碼,我會喜歡那個...... – Snicolas 2011-05-30 14:58:47

+0

@Snicolas:如果你想爲Flip3d動畫類,我有它,但我怎麼可以發佈它沒有anyQuestion什麼的,??? @ ferdy182:你可以像Cata所說的那樣將setAnimationListener設置爲onAnimationEnd()方法,啓動你的flip3D動畫 – Houcine 2011-05-30 15:20:42

+0

你可以在其中一個服務上共享你的代碼:http://blogs.sitepoint.com/top-5-places -to-share-code-quickly /並將鏈接粘貼到此處的代碼:) – pawelzieba 2011-05-30 15:31:38

回答

1

我認爲你可以使用onAnimationEnd()看到這裏的文檔:http://developer.android.com/reference/android/view/View.html#onAnimationEnd%28%29

下面是一個例子,如何使用它:android animation is not finished in onAnimationEnd

喜歡的東西:

mAnimation.setAnimationListener(new AnimationListener() { 
    @Override 
    public void onAnimationEnd(Animation arg0) { 
         //Functionality here 
    } 
+0

嗨,我已經在使用onAnimationEnd,但是它會被調用給網格視圖的每個單元格,但是沒有引用已經結束的視圖,但是,即使統計了它被調用的次數,我也無法在調用網格的結果視圖上啓動3d翻轉。 getChildAt(i)或者grid.getAdapter()。 getView(I,NULL,NULL) – 2011-05-31 07:37:26