2014-09-05 89 views
1

我想使用ObjectAnimator在Y軸上移動textView。此代碼有效,但由於屏幕尺寸不適合每個設備。如何使用ObjectAnimator參數來調整所有設備?

ObjectAnimator mover = ObjectAnimator.ofFloat(expand, "translationY", -250, 0); 

如何更改最後兩個參數?也有類似的問題,我也試過這些,但他們不工作。

回答

4

有兩種情況:

  1. 你要那麼,它需要一些確定的位置相對另一種意見認爲,以移動視圖。在這種情況下,你應該只根據這些意見(見getTop()getLeft()等)

  2. 您希望您的意見,將一些定義物理距離屏幕(這是你的情況我的位置讓你的計算猜測),所以用戶會將其視爲運動。在這種情況下,您應該使用設備無關像素(dp)而不是原始像素(在您的情況下爲-250)。 ObjectAnimator本身不支持這種轉換,所以你必須自己做。最簡單的方法(寫入,讀取和支持)爲存儲這些值在dimensions資源,並通過getResources().getDimensionPixelOffest()方法讓他們

+0

感謝像一個魅力ton..working。 – 2015-09-08 07:43:40

相關問題