2014-04-28 22 views

回答

32

以上答案不正確。

文檔狀態XY性質是絕對位置,而translationXtranslationY分別稱爲左和top屬性。

所以,animate().x()animate().translationX()之間的區別在於,一個動畫播放至經絕對值,而其他動畫爲靜止絕對值而是由視圖LEFTTOP值來確定。

相比之下,animate().xBy()animate().translationXBy()增加(代數)屬性值的指定量。

這是上面引用的「一些數學」的起源。

+1

我沒有得到。你可以給更多的信息。或鏈接到一些資源。所以我可以理解的概念 –

+0

https://developer.android.com/reference/android/view/View.html –

1

x指的是x軸視圖的當前視覺位置。因此,例如,當您通過調用view.animate().x(10)x製作動畫時,視圖將變成動畫,以便它移動到x=10。假設你開始動畫時,視圖的位置是(100,150)。到動畫結束時,視圖將在(10,150)中。

現在,與translationX對比。如果您通過調用view.animate().translationX(10)爲此屬性創建動畫,則您將移動x軸上的許多像素的視圖。讓我們假設一個例子,當你開始動畫時,視圖的位置是(100,150)。在動畫結束時,視圖將在(110,150)中。

希望澄清x()translationX()之間的差異。差異與y()translationY()相同,但在y軸上。

在我看來,xBy()達到translationX()效果相同,但通過使用x屬性本身加上一些數學。 yBy()translationY()是y軸上的等效項。

希望澄清...

+0

謝謝,我一直想知道爲什麼他們需要一個translateXBy方法。感覺和XBy完全一樣。 –

+11

這是錯誤的答案。查看NicolòParolini的回答 – tgkprog

+0

同意,這不是正確的答案。看文檔。 –

相關問題