2012-09-22 127 views
0

我有5個線性佈局封裝在一個線性佈局中,在相對佈局內。我正在使用翻譯動畫在一個線性佈局內移動圖像按鈕。如果我嘗試將它從線性佈局外部(在這種情況下是另一個線性佈局中的一個點)移動到它所在的線性佈局中,它似乎位於另一個線性佈局的後面,即不可見,並且僅在穿越進入它所在的線性佈局。我可以通過其他線性佈局以某種方式獲得它嗎?這是我的代碼。如何在第三方線性佈局前創建動畫

<translate 
    android:duration="2000" 
    android:fromXDelta="-40%p" 
    android:fromYDelta="100%p" 
    android:toXDelta="0%p" 
    android:toYDelta="10%p" 
    android:zAdjustment="top" /> 
</set> 

框架佈局能解決這個問題嗎?如果是這樣,我如何確保框架佈局中的圖像出現在線性佈局之前?

回答

0

在DecorView上動畫顯示視圖。首先將它添加到decorView,然後調用翻譯動畫。動畫結束時從decorview中刪除該視圖。

findViewById(R.id.main).addView(viewToAnimate); 

viewToAnimate.setAnimationListener(new AnimationListener() { 

    onAnimationEnd(..) { 
     findViewById(R.id.main).removeView(viewToAnimate); 
    } 
} 
viewToAnimate.startAnimation(); 

代碼不正是將(從內存類型),而應該是這樣..

+0

((ViewGroup中)getWindow()getDecorView()。)removeView(scaleView)。和addview,但它強制關閉,說已經有一個父視圖,並首先將其刪除。 –

+0

嘗試添加到'getWindow()。getDecorView()。getRootView()' – Ronnie

+0

同樣的結果很不幸 –