Ресурс Property Animation описывает изменение свойства объекта в течение определенного промежутка времени. Анимация свойств объектов представлена в версиях Android-платформы, начиная с версии 3.0.
Для запуска анимации свойства объекта на основе XML-описания необходимо создать из XML-ресурса Property Animation объект android.animation.AnimatorSet, android.animation. ObjectAnimator или android.animation.ValueAnimator, используя статический метод android.animation.AnimatorInflater. loadAnimator (), и связать анимацию с объектом с помощью метода setTarget () суперкласса android.animation.Animator, после чего запустить анимацию методом start () суперкласса Animator.
Для создания ресурса Property Animation в окне Project Explorer нажмем правой кнопкой мышки на узле проекта и в контекстном меню выберем команду New | Other | Android | Android XML File, нажмем кнопку Next – в результате откроется окно мастера, в списке Resource Type которого выберем тип Property Animation.
Поле File: мастера создания ресурса Property Animation предлагает ввести имя нового файла XML-описания анимации, который затем с расширением. xml появится в каталоге res/animator Android-проекта и будет доступен в Java-коде с помощью сгенерированного класса R.animator.filename или в XML-коде с помощью ссылки @ [package: ] animator/filename.
Раздел Root Element: мастера отображает элементы animator, objectAnimator и set, представляющие тэги <animator>, <objectAnimator> и <set> соответственно, при этом каждый из них может служить единственным корневым тэгом XML-файла ресурса Property Animation.
Тэг <animator> представляет класс ValueAnimator и описывает анимацию значения типа float, int или color в течение определенного промежутка времени, используя атрибуты:
android: duration – время анимации в миллисекундах, по умолчанию 300ms.
android: valueFrom – начальное значение.
android: valueTo – конечное значение.
android: startOffset – задержка анимации в миллисекундах.
android: repeatCount – количество циклов анимации, значение -1 означает бесконечную анимацию.
android: repeatMode – режим повторения анимации, возможные значения repeat и reverse.
android: valueType – тип значения для анимации, для значения типа color не указывается, возможные значения intType и floatType (по умолчанию).
Тэг <objectAnimator> представляет класс ObjectAnimator и описывает анимацию значения свойства объекта в течение определенного промежутка времени, используя атрибуты:
android: propertyName – имя свойства объекта, например android: propertyName=«alpha».
android: duration – время анимации в миллисекундах, по умолчанию 300ms.
android: valueFrom – начальное значение свойства.
android: valueTo – конечное значение свойства.
android: startOffset – задержка анимации в миллисекундах.
android: repeatCount – количество циклов анимации, значение -1 означает бесконечную анимацию.
android: repeatMode – режим повторения анимации, возможные значения repeat и reverse.
android: valueType – тип значения для анимации, для значения типа color не указывается, возможные значения intType и floatType (по умолчанию).
Тэг <set> представляет класс AnimatorSet и обеспечивает группировку анимаций, используя атрибут android: ordering с возможными значениями together (анимации проигрываются параллельно) и sequentially (анимации проигрываются последовательно).
После ввода имени нового XML-файла ресурса Property Animation, выбора корневого элемента и нажатия кнопки Next, появляется окно Choose Configuration Folder, позволяющее выбрать спецификатор папки animator, обеспечивающий поддержку специфической конфигурации Android-устройства, в соответствии с которой папка animator с нужным спецификатором будет выбрана Android-системой для загрузки при выполнении кода приложения.
После создания нового XML-файла ресурса Property Animation он будет открыт в XML-редакторе кода.
Ресурс Tween Animation описывает анимацию вращения, исчезновения, перемещения и масштабирования View-компонента. Для запуска анимации View-компонента на основе XML-описания необходимо создать из XML-ресурса Tween Animation объект android.view.animation.Animation, используя статический метод android.view.animation.AnimationUtils. loadAnimation () и запустить анимацию методом startAnimation (Animation animation) суперкласса android.view.View.
Для создания ресурса Tween Animation в окне Project Explorer нажмем правой кнопкой мышки на узле проекта и в контекстном меню выберем команду New | Other | Android | Android XML File, нажмем кнопку Next – в результате откроется окно мастера, в списке Resource Type которого выберем тип Tween Animation.
Поле File: мастера создания ресурса Tween Animation предлагает ввести имя нового файла XML-описания анимации, который затем с расширением. xml появится в каталоге res/anim Android-проекта и будет доступен в Java-коде с помощью сгенерированного класса R.anim.filename или в XML-коде с помощью ссылки @ [package: ] anim/filename.
Раздел Root Element: мастера отображает элементы alpha, rotate, scale, set и translate, представляющие тэги <alpha>, <rotate>, <scale>, <set> и <translate> соответственно, при этом каждый из них может служить единственным корневым тэгом XML-файла ресурса Tween Animation.
Вышеупомянутые тэги имеют общие атрибуты, унаследованные от суперкласса android.view.animation.Animation:
android: detachWallpaper – если true, тогда обои не анимируются вместе с окном.
android: duration – продолжительность анимации в миллисекундах.
android: fillAfter – если true, тогда преобразование применяется после окончания анимации.
android: fillBefore – если true, тогда преобразование применяется перед началом анимации.
android: fillEnabled – если true, тогда значение fillBefore учитывается.
android: interpolator – указывает объект android.view.animation.Interpolator, отвечающий за определение скорости анимации.
android: repeatCount – количество циклов анимации.
android: repeatMode – режим повторения анимации, возможные значения repeat и reverse.
android: startOffset – задержка анимации в миллисекундах.
android: zAdjustment – определяет поведение компонента по оси Z, возможные значения normal (позиция в стеке сохраняется), top (компонент в течение анимации находится на вершине стека), bottom (компонент в течение анимации находится внизу стека).
Тэг <alpha> представляет класс AlphaAnimation и описывает анимацию значения прозрачности в течение определенного промежутка времени, используя атрибуты:
android: fromAlpha – начальное значение прозрачности.
android: toAlpha – конечное значение прозрачности.
Тэг <rotate> представляет класс RotateAnimation и описывает вращение вокруг оси, используя атрибуты:
android: fromDegrees – начальный угол вращения.
android: toDegrees – конечный угол вращения.
android: pivotX и android: pivotY – координаты оси вращения от левого края компонента в пикселях или процентах.
Тэг <scale> представляет класс ScaleAnimation и описывает масштабирование компонента, используя атрибуты:
android: fromXScale – начальный коэффициент масштабирования по оси Х.
android: toXScale – конечный коэффициент масштабирования по оси Х.
android: fromYScale – начальный коэффициент масштабирования по оси Y.
android: toYScale – конечный коэффициент масштабирования по оси Y.
android: pivotX и android: pivotY – координаты центра масштабирования.
Тэг <translate> представляет класс TranslateAnimation и описывает движение компонента, используя атрибуты:
О проекте
О подписке