Создание "забавных" анимаций раскадровки? - PullRequest
2 голосов
/ 13 июля 2011

Я сейчас использую раскадровку так:

 DoubleAnimation doubleAnimation = new DoubleAnimation( );
 doubleAnimation.From = _ScrollBar.Value;
 doubleAnimation.To = _Shift;
 doubleAnimation.Duration = new Duration( new TimeSpan( 0, 0, 0, 0, 200 ) );

 Storyboard.SetTarget( doubleAnimation, _ScrollBar );
 Storyboard.SetTargetProperty( doubleAnimation, new PropertyPath( RangeBase.ValueProperty ) );

 storyboard.Children.Add( doubleAnimation );
 storyboard.Begin( );

Который линейно прокручивает полосу прокрутки. Теперь мне было интересно, есть ли какие-нибудь быстрые и простые способы сделать анимацию увлекательной (то есть не линейной). Может быть, что-то вроде эффекта колебания?

1 Ответ

4 голосов
/ 13 июля 2011

Вам нужно взглянуть на EasingFunctions , которые являются частью анимации. Они позволяют вам указать эффект (есть несколько предварительно настроенных на выбор), и он применит формулу к вашему линейному изменению значения, таким образом, немного «раскачивая» его.

Ссылки:

Не совершайте основную ошибку, перебирая их с собой - вы не хотите раздражать пользователя дерьмом :) Теперь, когда вы знаете, что ищете, вы также обнаружите, что здесь, на SO, есть куча предыдущих вопросов о таких вещах, которые вы можете проверить.

...