Intereting Posts
Повторить задачу с задержкой? Android: marginable margin и / или дополнение Ионный эмулятор ios работает только с –livereload Лучшая практика для вложенных фрагментов в Android 4.0, 4.1 (<4.2) без использования библиотеки поддержки Android – Как получить список параметров AudioManager / AudioSystem Ионный сбор Android | Ошибка: не найдены установленные инструменты сборки. Установите инструменты для сборки Android Простой медиаплеер воспроизводит mp3 с пути к файлу? Чтение текстового файла с сервера на Android Программное обеспечение для Android NDK с собственным профилем кода на реальных телефонах Android Случайные атаки приложений на Android Wear 5.0.X Службы android – ошибка: сервис не зарегистрирован Android: не удается вызвать toString () для примитивного типа int Как записывать телефонные звонки в Android? Предотвращение пиратства приложений для Android Определите, есть ли доступ к Интернету на Android

Как работает TranslateAnimation android?

я прошел сквозь

TranslateAnimation (float fromXDelta, float toXDelta, float fromYDelta, float toYDelta) 

Но все еще запутывается, как работает Translate animation .

Кто-нибудь объяснит, как это работает, я читаю документы, которые говорят

 fromXDelta Change in X coordinate to apply at the start of the animation toXDelta Change in X coordinate to apply at the end of the animation fromYDelta Change in Y coordinate to apply at the start of the animation toYDelta Change in Y coordinate to apply at the end of the animation 

Но все же мне непонятно, как это работает.

EDIT : У меня есть Button и LinearLayout без какого-либо дочернего LinearLayout , когда я LinearLayout на Button Я хочу создать динамический TextView и оживить, что TextView для LinearLayout количество LinearLayout элементов будет зависеть от количества LinearLayout на кнопке.

Solutions Collecting From Web of "Как работает TranslateAnimation android?"

AFAIK, будет относительная связь между этим.

То есть, если вы хотите перевести скрытое текстовое изображение справа от экрана влево от экрана , щелкнув по кнопке, вам действительно нужно перевести его из 100% от X-направления ( справа от экрана ) до 0% от X – направление (в левой части экрана ).

На данный момент вам не нужно менять направление Y на всех. Так что это будет 0% для обоих вариантов. Итак, у вас будет:

ОтXDelta 100%

ToXDelta 0%

FromYDelta 0%

ToYDelta 0%

Вы можете ограничить просмотр компонента, установив этот процент от 0 до 100, согласно вашему требованию.

Аналогичным образом, если вам нужно перевести компонент на Y-направление, тогда вам нужно изменить 0% на другое значение.

Надеюсь, теперь это ясно.

РЕДАКТИРОВАТЬ :

Для вашего требования вам нужно переопределить onclick кнопки-1, и там вы можете контролировать видимость кнопки-2, а также перевод.

Создайте файл анимации в папке с анимацией.

translate_button.xml:

 <?xml version="1.0" encoding="utf-8"?> <!-- translating button from right to left --> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:fromXDelta="100%" android:toXDelta="0%" android:fromYDelta="0%" android:toYDelta="0%" android:duration="900" /> </set> 

Теперь, в вашем файле активности,

 ... // ll is linear layout containing button_2 //counter is used to manage visibility of button_2 on click of button_1,ie1st click-button_2 would be visible,on 2nd click on button_1,it would be invisible. //you can change behavior as per your need button_2.setVisibility(View.GONE); button_1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if(counter<1) { counter++; button_2.setVisibility(View.VISIBLE); Animation anim=AnimationUtils.loadAnimation(context, R.anim.translate_button); button_2.startAnimation(anim); } else { counter=0; button_2.setVisibility(View.GONE); } } }); ll.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if(counter==1) { counter=0; button_2.setVisibility(View.GONE); } } }); ... 

С помощью TranslateAnimation вы можете создать анимацию для управления объектом.

С помощью TranslateAnimation вы можете контролировать положение объекта. Вы передаете эти 4 параметра, которые обозначают координаты X и Y.

Например, вы хотите переместить объект вправо , вы бы сделали что-то вроде: TranslateAnimation (0.0f, 1.0f, 0.0f, 0.0f)

(Или используйте Animation.ABSOLUTE , Animation.RELATIVE_TO_SELF )

Теперь мы используем только координату X, потому что теперь мы делаем легкую анимацию «LeftToRight».

 Change in X coordinate to apply at the start of the animation toXDelta (0.0f) Change in X coordinate to apply at the end of the animation (1.0f) 

= 1 вправо

Возможно, посмотрите на http://en.wikipedia.org/wiki/Coordinate_system