Подтвердить что ты не робот

В чем разница между методами ViewPropertyAnimator translateYBy() vs yBy()?

ViewPropertyAnimators (http://developer.android.com/reference/android/view/ViewPropertyAnimator.html) имеют два типа методов для перемещения видов вокруг:

translateX() vs x(), translateY() vs y(), translateXBy() vs xBy() и, наконец, переводYBy() vs yBy().

Может ли кто-нибудь сказать мне разницу между этими методами?

4b9b3361

Ответ 1

В документации говорится, что свойства X и Y являются абсолютными позициями, тогда как translationX и translationY относятся к свойствам LEFT и TOP соответственно.

Таким образом, разница между animate().x() и animate().translationX() заключается в том, что один анимируется до абсолютного значения, тогда как другой анимируется до все еще абсолютного значения, но определяется значениями вида LEFT и TOP.

Напротив, animate().xBy() и animate().translationXBy() увеличивают (алгебраически) значение свойства на указанную величину.

Это происхождение "некоторой математики", процитированной выше.

Ответ 3

x относится к текущей визуальной позиции представления по оси x. Так, например, когда вы анималируете x, вызывая view.animate().x(10), представление будет анимировано, так что оно перемещается в 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.

Надеюсь, что это разъяснит...

Ответ 4

translationX и translationY: эти свойства управляют тем, где представление находится в виде дельты от его левой и верхней координат, которые задаются его контейнером макета.

x и y: это простые служебные свойства, которые описывают конечное местоположение представления в его контейнере как сумму значений левого и верхнего значений, а также значений translationX и translationY.

Анимированные просмотры документов