故事板动画没有动画效果

时间:2015-03-31 08:54:40

标签: c# xaml animation windows-phone-8

我最近开始学习WP8.1,而我正在尝试使用动画。

我要做的是设置一个像书页一样的启动画面:从后面开始然后,当它覆盖整个屏幕并触摸它时,继续旋转就好像你正在翻书页一样。 动画的第一部分是好的,但我不知道为什么第二部分(第二个故事板)没有动画。稍等一下,矩形只取最后一个位置而不需要动画(这很丑!)。

这是我的故事板(注意到很复杂):

<Storyboard x:Name="EndgameSplashInStoryboard">
            <!--<DoubleAnimation Duration="0:0:0.3" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="EndgameSplashGrid" d:IsOptimized="True"/>-->
            <DoubleAnimation Duration="0:0:0.3" By="70" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)" Storyboard.TargetName="EndgameSplashGrid" d:IsOptimized="True"/>
        </Storyboard>
        <Storyboard x:Name="EndgameSplashOutStoryboard">
            <!--<DoubleAnimation Duration="0:0:0.3" To="0" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="EndgameSplashGrid" d:IsOptimized="True"/>-->
            <DoubleAnimation Duration="0:0:0.3" By="70" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)" Storyboard.TargetName="EndgameSplashGrid" d:IsOptimized="True"/>
        </Storyboard>

我评论了不透明动画来简化我的动画。 以下是我想要制作动画的内容:

<Grid x:Name="EndgameSplashGrid">
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition/>
        </Grid.RowDefinitions>

        <Grid.Projection>
            <PlaneProjection x:Name="EndgameSplashProjection" RotationY="-70" CenterOfRotationX="0"/>
        </Grid.Projection>

        <Rectangle x:Name="EndgameSplashRectangle" Grid.RowSpan="2" Fill="{StaticResource PhoneAccentBrush}" Tapped="EndgameSplashRectangle_Tapped"/>
        <TextBlock x:Name="EndgameSplashText" Grid.Row="0" Text="victoire!" Style="{StaticResource EndgameSplashText}"/>
        <TextBlock x:Name="EndgameSplashSubtext" Grid.Row="1" TextWrapping="Wrap" Style="{StaticResource EndgameSplashSubtext}"
                   Text="Félicitations, vous avez trouvé le nombre en 7 essais :-)"/>
    </Grid>

如果有人能看出为什么会这样,那将会非常有帮助:) 谢谢,祝你有愉快的一天!

1 个答案:

答案 0 :(得分:0)

所以我明白动画的第一部分会播放,但第二部分没有? 如果将它们放在一个故事板中,并在第二个故事板中设置BeginTime="0:0:0.3"怎么办?

编辑:哦,我只是看,它是完全相同的动画,你想要它播放两次?然后,您只需添加属性RepeatBehavior="2x"

如果您想在同一媒体资源上一个接一个地使用两个不同的动画,则可以使用DoubleAnimationUsingKeyFrames