【问题标题】:Find out Easing Functions for WinRT Theme Animations找出 WinRT 主题动画的缓动函数
【发布时间】:2012-10-29 00:13:35
【问题描述】:

一个有点奇怪的问题,但无论如何要找出 WinRT XAML 主题动画中使用了哪些缓动函数 - 更具体地说,我正在尝试复制 EntranceThemeTransition 的缓动函数(我不能直接使用)。

我天真地认为使用 .NET Reflector 之类的东西会有所帮助,但我认为我需要实际源代码,而不是 .Net Reflector 显示的内容。

有人有什么想法吗?

【问题讨论】:

    标签: xaml animation windows-runtime


    【解决方案1】:

    您可能想查看 MSDN 上的 AnimationMetrics 示例。

    有一个 AnimationDescription 类会告诉你关于内置动画类型的各种信息,基本上是 Windows.UI.Core.AnimationMetrics.AnimationEffect 枚举中的任何信息。

    例如:

    var animationDescription = new AnimationDescription(AnimationEffect.EnterPage, AnimationEffectTarget.Incoming);
    
    var s = new System.Text.StringBuilder();
    s.AppendFormat("Stagger delay = {0}ms", animationDescription.StaggerDelay.TotalMilliseconds);
    s.AppendLine();
    s.AppendFormat("Stagger delay factor = {0}", animationDescription.StaggerDelayFactor);
    s.AppendLine();
    s.AppendFormat("Delay limit = {0}ms", animationDescription.DelayLimit.TotalMilliseconds);
    s.AppendLine();
    s.AppendFormat("ZOrder = {0}", animationDescription.ZOrder);
    s.AppendLine();
    s.AppendLine();
    //etc
    

    链接:http://code.msdn.microsoft.com/windowsapps/Animation-metrics-sample-acb0220c

    【讨论】:

      【解决方案2】:

      我相信这些内置动画以不同的方式实现,并且它们独立于常规 Storyboard + 子动画运行,因此您需要通过一些测试来近似这些动画,这些测试与您实现并排运行的常规 Storyboard 动画进行比较.

      可视化缓动函数的一种方法是运行主题转换,在一个轴上移动 UI 元素,同时运行另一个在垂直轴上以线性运动方式移动元素的主题转换(未应用缓动函数)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-12
        • 1970-01-01
        • 1970-01-01
        • 2018-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-27
        相关资源
        最近更新 更多