ElasticEase 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示缓动函数,创建一个类似于弹簧来回振动直到停止的动画。
public ref class ElasticEase sealed : EasingFunctionBase
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ElasticEase final : EasingFunctionBase
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ElasticEase : EasingFunctionBase
Public NotInheritable Class ElasticEase
Inherits EasingFunctionBase
<ElasticEase .../>
- 继承
- 属性
示例
此 XAML 示例将 ElasticEase 缓动函数应用于 DoubleAnimation ,以创建类似于弹簧来回振荡的动画,直到它停止。
<StackPanel x:Name="LayoutRoot" >
<StackPanel.Resources>
<Storyboard x:Name="myStoryboard">
<DoubleAnimation From="1" To="6" Duration="00:00:3"
Storyboard.TargetName="rectScaleTransform"
Storyboard.TargetProperty="ScaleY">
<DoubleAnimation.EasingFunction>
<!-- Elastic easing function assigned to From/To animation -->
<ElasticEase x:Name="myElasticEase" Oscillations="3"
Springiness="1" EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</StackPanel.Resources>
<Rectangle PointerPressed="Pointer_Clicked"
Fill="Blue" Width="200" Height="30">
<Rectangle.RenderTransform>
<ScaleTransform x:Name="rectScaleTransform" />
</Rectangle.RenderTransform>
</Rectangle>
</StackPanel>
// When the user clicks the rectangle, the animation
// begins.
private void Pointer_Clicked(object sender, PointerRoutedEventArgs e)
{
myStoryboard.Begin();
}
注解
ElasticEase 是两个缓动函数之一,可生成超出正常 “从/到 ”范围的值。 (另一个是 BackEase.) 缓动函数开始时,值在 From 值周围振荡正负,直到达到最终的正振幅,即 To 值。 Springiness 属性修改此振荡的正弦字符。 Springiness 为 0 时,振荡基本上是正弦的,类似于弹簧运动的典型示意图。 如果 Springiness 值较大,则类似于抑制弹簧的运动。
涛动属性声明函数振荡并交叉到实际低于起始起始值的值的次数。
只需试验 Springiness、 振荡 和 EasingMode 属性,直到动画直观地执行动画属性值方案所需的操作,即可获得最佳结果。
BounceEase 是一个类似的缓动函数,适用于动画中的物理模拟。 ElasticEase 的区别在于 ,BounceEase 永远不会超出 “从/到 ”范围。 概念化这两个缓动函数的另一种方法是 ElasticEase 是可用于对字符串的拔出进行动画处理,而 BounceEase 是可用于显示球对线条或平面的弹跳。
缓动函数可以应用于 From/To/By 动画的 EasingFunction 属性,或应用于用于关键帧动画缓动变体的关键帧类型的 EasingFunction 属性。 有关详细信息,请参阅 关键帧动画和缓动函数动画。
构造函数
ElasticEase() |
初始化 ElasticEase 类的新实例。 |
属性
Dispatcher |
始终在Windows 应用 SDK应用中返回 |
DispatcherQueue |
|
EasingMode |
获取或设置用于指定动画内插方式的值。 (继承自 EasingFunctionBase) |
Oscillations |
获取或设置目标在动画目标位置来回滑动的次数。 |
OscillationsProperty |
标识 “振荡” 依赖属性。 |
Springiness |
获取或设置弹簧的刚度。 弹性值越小,弹簧就越硬,且每次振动时弹力在强度方面会减小得越快。 |
SpringinessProperty |
标识 Springiness 依赖属性。 |
方法
ClearValue(DependencyProperty) |
清除依赖属性的本地值。 (继承自 DependencyObject) |
Ease(Double) |
转换规范化时间以控制动画的节奏。 (继承自 EasingFunctionBase) |
GetAnimationBaseValue(DependencyProperty) |
返回为依赖属性建立的任何基值,该基值适用于动画未处于活动状态的情况。 (继承自 DependencyObject) |
GetValue(DependencyProperty) |
从 DependencyObject 返回依赖属性的当前有效值。 (继承自 DependencyObject) |
ReadLocalValue(DependencyProperty) |
如果设置了本地值,则返回依赖属性的本地值。 (继承自 DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
注册通知函数,用于侦听此 DependencyObject 实例上对特定 DependencyProperty 的更改。 (继承自 DependencyObject) |
SetValue(DependencyProperty, Object) |
设置 DependencyObject 上依赖属性的本地值。 (继承自 DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
取消以前通过调用 RegisterPropertyChangedCallback 注册的更改通知。 (继承自 DependencyObject) |