這是我應該怎樣做:
- 在構造
- 覆蓋
onTouchEvent(MotionEvent ev)
延長你的選擇
- 呼叫
setStaticTransformationsEnabled(true);
的滾動型跟蹤手指
- 覆蓋
getChildStaticTransformation(View child, Transformation t)
的位置
- 該函數內部使用Camera類來創建3D變換矩陣。類似於圍繞X軸旋轉,旋轉中心是scrollview的中心。旋轉角度應取決於孩子的滾動位置和當前手指位置。
編輯:現在,我想了一會兒,你應該做的有點不同。
- 不改寫
getChildStaticTransformation(View child, Transformation t)
而改爲drawChild(Canvas canvas, View child, long drawingTime)
。 這允許您使用圖形緩存api。 (例如我的第一個鏈接)。這意味着,孩子第一次呈現爲位圖改進繪圖性能,並允許你這種線性藍色應用到透明的漸變到視圖
你可以看看here或here一個例子,如何使用相機。 This是一個具有超調滾動反彈效果的項目。 爲了讓超滾動效果更酷,您應該在用戶釋放手指時使用動畫。由於我非常喜歡新的android動畫框架,因此我會使用nine old androids。 我認爲正確實施這個效果對於有經驗的android程序員來說至少需要1-2天的時間。