Sbenny's Forum

Sbenny.com доверяют 1,330,327 XNUMX XNUMX счастливых пользователей с 2014 года.
Зарегистрируйтесь
НасфератуДра
НасфератуДра
4: Начало и конец анимации задаются с помощью:
Android: fromТРАНСФОРМАЦИЯ android:toТРАНСФОРМАЦИЯ
ТРАНСФОРМАЦИЯ: преобразование, которое мы хотим указать. В нашем случае мы начинаем со шкалы x и y, равной 0, и заканчиваем шкалой x и y, равной 1.
android:fillAfter: свойство определяет, должно ли представление быть видимым или скрытым в конце анимации. Мы сделали его видимым в приведенном выше коде. Если для него установлено значение false, элемент переходит в свое предыдущее состояние после анимации.
android:startOffset: это время ожидания перед запуском анимации. Это свойство в основном используется для последовательного выполнения нескольких анимаций.
НасфератуДра
НасфератуДра
5: android:repeatMode: это полезно, если вы хотите, чтобы анимация повторялась.
android:repeatCount: определяет количество повторений анимации. Если мы установим для этого значения значение «бесконечно», анимация будет повторяться бесконечное количество раз.
Загрузка анимации при нажатии виджета пользовательского интерфейса
Наша цель — показать анимацию при нажатии на любой виджет (скажем, TextView). Для этого нам нужно использовать класс анимации. XML-файл, содержащий логику анимации, загружается с помощью класса AnimationUtils путем вызова функции loadAnimation(). В приведенном ниже фрагменте показана эта реализация.
НасфератуДра
НасфератуДра
6: Анимационная анимация; анимация = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.sample_animation);
Чтобы запустить анимацию, нам нужно вызвать функцию startAnimation() для элемента пользовательского интерфейса, как показано во фрагменте ниже:
sampleTextView.startAnimation(анимация);
Здесь мы выполняем анимацию для компонента textView, передавая тип анимации в качестве параметра.

Настройка прослушивателей анимации
Это необходимо только в том случае, если мы хотим прослушивать такие события, как начало, окончание или повторение. Для этого действия мы должны реализовать AnimationListener, а следующие методы, приведенные ниже, необходимо переопределить.
НасфератуДра
НасфератуДра
7: onAnimationStart: это сработает после запуска анимации.
onAnimationEnd: это сработает после завершения анимации.
onAnimationRepeat: это сработает, если анимация повторяется.
Структура проекта анимации Android
Как видите, мы включили XML-файлы всех основных типов анимации, описанных выше.
НасфератуДра
НасфератуДра
8: Здесь я привожу примеры кодов для большинства распространенных анимаций Android.
Затухание анимации

Fade_in.xml
<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" >

Здесь альфа относится к непрозрачности объекта. Объект с более низкими значениями альфа менее непрозрачен, а объект с более высокими значениями альфа — более непрозрачен. Непрозрачный = Прозрачный
НасфератуДра
НасфератуДра
9: Затухание анимации — это не что иное, как увеличение значения альфа с 0 до 1.
Затухающая анимация
Fade_out.xml
<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" >

Затухание анимации Android полностью противоположно постепенному появлению, где нам нужно уменьшить значение альфа с 1 до 0.
НасфератуДра
НасфератуДра
10.
Анимация перекрестного затухания
Перекрестное затухание выполняет плавное появление анимации в одном TextView, в то время как другой TextView исчезает. Это можно сделать с помощью Fade_in.xml и Fade_out.xml в двух TextView. Код будет обсуждаться в файле MainActivity.java.

Анимация мигания

блинк.xml

<set xmlns:android="https://schemas.android.com/apk/res/android">
НасфератуДра
НасфератуДра
11. Здесь нарастание и затухание каждый раз выполняются бесконечно в обратном режиме.

Увеличить анимацию

Zoom_in.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" >https://schemas.android.com/apk/res/android" android:duration="1000" android:fromXScale="1" android:fromYScale="1" androidpivotX="50%" androidpivotY="50%" android:toXScale="3" android:toYScale="3" >

Мы используем PivotX="50%" и PivotY="50%" для масштабирования от центра элемента.
НасфератуДра
НасфератуДра
12.
Уменьшить анимацию

Zoom_out.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" >https://schemas.android.com/apk/res/android" android:duration="1000" android:fromXScale="1.0" android:fromYScale="1.0" androidpivotX="50%" androidpivotY="50%" android:toXScale="0.5" android:toYScale="0.5" >

Обратите внимание, что android:from и android:to противоположны в файлах Zoom_in.xml и Zoom_out.xml.
НасфератуДра
НасфератуДра
13. Поворот анимации

вращать.xml

<set xmlns:android="https://schemas.android.com/apk/res/android">

Здесь используется тег from/toDegrees для указания градусов и циклический интерполятор.
НасфератуДра
НасфератуДра
14. Перемещение анимации

перемещение.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:interpolator="@android:anim/linear_interpolator" android:fillAfter="true">
НасфератуДра
НасфератуДра
15.
Анимация скольжения вверх

слайд_вверх.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" >

Это достигается путем установки android:fromYScale="1.0″ и android:toYScale="0.0″ внутри тега масштаба.
НасфератуДра
НасфератуДра
16.
Анимация скольжения вниз

слайд_вниз.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true">

Это полная противоположность слайду_up.xml.
НасфератуДра
НасфератуДра
17.
Анимация отказов

отказов.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" android:interpolator="@android:anim/bounce_interpolator">

Здесь интерполятор отскока используется для завершения анимации подпрыгивающим способом.
НасфератуДра
НасфератуДра
18.1 Последовательная анимация

sequentialAnimation.xml

<set xmlns:android="https://schemas.android.com/apk/res/android" android:fillAfter="true" android:interpolator="@android:anim/linear_interpolator" >
НасфератуДра
НасфератуДра
18.2
androidid:duration="800" android:fillAfter="true" android:fromYDelta="0%p" android:startOffset="1100" android:toYDelta="70%p" />
НасфератуДра
НасфератуДра
НасфератуДра
18.4 Здесь используется другой android:startOffset для переходов, чтобы сохранить их последовательность.
НасфератуДра
НасфератуДра
19.1 код
Макет Activity_main.xml состоит из ScrollView и RelativeLayout (мы обсудим это в следующем руководстве), в которых каждый тип анимации вызывается в тексте с помощью соответствующих кнопок. XML-файл показан ниже: Activity_main.xml.
НасфератуДра
НасфератуДра
Топовое