一个有点奇怪的问题,但无论如何都要找出WinRT XAML主题动画中使用的缓动函数 - 更具体地说,我试图复制EntranceThemeTransition(我不能直接使用)。< / p>
我天真地认为使用类似.NET反射器的东西会有所帮助,但我会收集到我需要实际的源代码而不是.Net Reflector所显示的内容。
任何想法?
答案 0 :(得分: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
答案 1 :(得分:0)
我相信这些内置动画是以不同的方式实现的,它们独立于常规的Storyboard +子动画运行,因此您需要通过一些测试来比较这些,并将这些测试与您并行运行的常规Storyboard动画进行比较
可视化缓动函数的一种方法是运行主题转换,在一个轴上移动UI元素,同时运行另一个在直线运动中移动元素的垂直轴(不应用缓动函数)。