Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Создание обратимой анимации.




Создать обратимую анимацию. Это делается посредством установки свойства AutoReverse в true. Например, когда завершается анимация увеличения кнопки, она запускается в обратном направлении, возвращая кнопку в исходное состояние. Общая длительность анимации при этом удваивается.

Что происходит по завершении анимации?

Изначально FillBehavior установлено в HoldEnd, а это означает, что когда анимация завершится, ее финальное значение будет применено к целевому свойству. Если изменить FillBehavior на Stop, то по завершении анимации свойство вернется к своему исходному значению.

Удалить объект анимации по ее завершении, обработав событие Completed объекта анимации.

Свойство FillBehavior определяет поведение по завершении шкалы времени. По умолчанию по завершении шкалы времени запускается функция Filling. Конечное значение анимации, для которой установлено значение Filling, сохраняется.

Поскольку свойство FillBehavior анимации не изменено и содержит значение по умолчанию (HoldEnd), по завершении анимации сохраняется ее конечное значение (0). Таким образом, свойство Opacity по завершении анимации имеет значение 0. Если установить другое значение свойства Opacity , видимых изменений не произойдет, поскольку свойство Opacity по-прежнему управляется анимацией.

Чтобы возвратить управление анимированным свойством, используйте в коде метод BeginAnimation и присвойте параметру AnimationTimeline значение null.

при установке значения свойства, для которого анимации присвоено значение Active или Filling видимые изменения не происходят, но значение свойства все же изменяется.

Свойства AccelerationRatio и DecelerationRatio

Свойства AccelerationRatio и DecelerationRatio позволяют сжать часть временной шкалы, так что она будет пройдена быстрее. Остальная часть временной шкалы будет сжата для компенсации этого, чтобы общее время осталось неизменным.

Оба эти свойства представляют процентное значение. Например, AccelerationRatio, равное 0.3. указывает на то, что вы хотите потратить 30% общей длительности анимации на ускорение. Например, в десятисекундной анимации первые три секунды пройдут с ускорением, а остальные семь секунд — на постоянной скорости. Если установить AccelerationRatio в 0.3 и DecelerationRatio в 0.3, то ускорение будет выполняться в первые 3 секунды, следующие 4 секунды пройдут на постоянной скорости, а в последние три секунды произойдет замедление. В таком случае ясно, что сумма AccelerationRatio и DecelerationRatio не может превышать 1, поскольку невозможно потратить больше 100% времени анимации на ее ускорение и замедление.

Разумеется, можно установить AccelerationRatio в 1 (при этом скорость анимации будет расти от начала до ее конца) или же установить DecelerationRatio в 1 (анимация будет замедляться от начала до конца).

Анимации с ускорением и замедлением часто используются для обеспечения более естественного поведения. Однако AccelerationRatio и DecelerationRatio предоставляют лишь относительный контроль. Например, эти свойства не дают возможности варьировать степень ускорения либо устанавливать ее специально. Если нужна анимация, использующая неравномерное ускорение, то придется определить последовательность анимаций и установить свойства AccelerationRatio и DecelerationRatio для каждой из них отдельно.










Последнее изменение этой страницы: 2018-04-12; просмотров: 231.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...