2013-03-06 33 views
2

我有一個應用程序的GridView中顯示的項目列表。我希望能夠創造出像谷歌當前使用的動畫效果,當新項目出現在屏幕上時,它會慢慢移動到它所處的位置。獲取谷歌當前的效果gridview

目前我一直在玩GridView元素上的android:layoutAnimation,但這似乎並沒有給我想要的那種控制。有沒有人對此有任何指示,以瞭解可能需要完成的工作?

回答

1

我正在研究相同的動畫。基本上我創建了一個擴展LinearLayout並實現onGlobalLayoutListener的自定義佈局。在onGlobalLayout()我遍歷所有的孩子,並使用每個孩子的.startAnimation。對於動畫的使用是這樣的:

slide_up.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator" > 

    <translate 
     android:duration="800" 
     android:fromYDelta="100%p" 
     android:toYDelta="0" /> 

    <alpha 
     android:duration="800" 
     android:fromAlpha="0.0" 
     android:toAlpha="1.0" /> 

    <rotate 
     android:duration="800" 
     android:fromDegrees="25" 
     android:pivotX="0" 
     android:pivotY="0" 
     android:toDegrees="0" /> 

</set> 

編輯: 更多信息在這個位置:http://shardulprabhu.blogspot.de/2012/09/google-now-cards-layout.html

+0

謝謝,是線性佈局要擴展的一個是在listview/gridview中重複? – Andrew 2013-03-22 15:06:41

+0

此外,任何機會提供一些onGlobalLayoutListener代碼,因爲我不是很熟悉那樣做? – Andrew 2013-03-22 15:35:59

+0

添加了一個鏈接到我原來的答案。這應該有所幫助;) – vork 2013-03-24 17:19:43