带有 DiscreteObjectKeyFrame 的情节提要在 windows phone 8 中不起作用
Posted
技术标签:
【中文标题】带有 DiscreteObjectKeyFrame 的情节提要在 windows phone 8 中不起作用【英文标题】:Storyboard with DiscreteObjectKeyFrame is not working in windows phone 8 【发布时间】:2014-09-18 13:53:50 【问题描述】:我的 Windows Phone 8 应用程序中有一个故事板动画,就像这个。
<Storyboard x:Name="eqAnimation" RepeatBehavior="forever">
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="imageEq" Storyboard.TargetProperty="Source">
<DiscreteObjectKeyFrame KeyTime="0:0:0.0" Value="/Assets/zikzak.png" />
<DiscreteObjectKeyFrame KeyTime="0:0:0.2" Value="/Assets/zikzak2.png" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
但它根本没有播放。我必须更改图像控件的来源才能制作顺序动画。
【问题讨论】:
启动故事板的代码是什么? @kennyzx eqAnimation.Begin(); 您能告诉我您页面的所有 XAML 代码吗?我想知道 Storyboard 是在哪里定义的。 @kennyzx link 【参考方案1】:我有一个工作的 sn-p,刚刚用 Windows Phone 8 模拟器测试过。您可以将其复制到您的代码中(当然要更新图像路径),以查看它是否正在运行。
故事板在页面加载时开始,而不是在代码隐藏中开始。
<Image x:Name="img"> <!--do not set the Source here-->
<Image.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<BeginStoryboard>
<Storyboard RepeatBehavior="Forever">
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="img"
Storyboard.TargetProperty="Source">
<DiscreteObjectKeyFrame KeyTime="0:0:0.01" Value="/Assets/zikzak.png"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.2" Value="/Assets/zikzak2.png"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.4" Value="/Assets/zikzak.png"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.6" Value="/Assets/zikzak2.png"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Image.Triggers>
</Image>
【讨论】:
现在的问题是它总是只显示一个图像。 @user3134635 是否将第一个 DiscreteObjectKeyFrame 的 KeyTime 设置为“0:0:0.0”?将其设置为“0:0:0.01”。并且不要设置图像的来源。看到我更新的代码。 我修改了那些关键时间值。这是我更新的代码-link。但它仍然只是闪烁,只有一张图像。 是的...我可以看到您所说的闪烁...我添加了另外 2 个关键帧(只是前 2 帧的重复)。现在可以了,但不知道为什么,可能2个关键帧太少,动画无法正常运行。以上是关于带有 DiscreteObjectKeyFrame 的情节提要在 windows phone 8 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
使用带有 uuencode 的“sendmail”发送邮件,并带有主题
如何翻转正面带有标签而背面带有另一个标签的视图 - 参见图片
CakePHP 如何处理带有/不带有 'id' 字段的 HABTM 表?
带有 RecyclerView 的 DialogFragment 比带有 Recyclerview 的 Fragment 慢