Windows runtime 在emulator上播放动画,而不是在设备windows phone 8.1上播放

Windows runtime 在emulator上播放动画,而不是在设备windows phone 8.1上播放,windows-runtime,windows-phone-8.1,winrt-xaml,emulation,Windows Runtime,Windows Phone 8.1,Winrt Xaml,Emulation,我正在开发一个应用程序,并试图实现某种翻转效果(如flipboard) 这是我的xaml <Page.Resources> <Storyboard x:Name="FlipBottomStoryboard"> <DoubleAnimation Duration="0:0:1.1" To="-80.9" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.Rota

我正在开发一个应用程序,并试图实现某种翻转效果(如flipboard)

这是我的xaml

<Page.Resources>
    <Storyboard x:Name="FlipBottomStoryboard">
        <DoubleAnimation Duration="0:0:1.1" To="-80.9" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationX)" Storyboard.TargetName="grid" d:IsOptimized="True"/>
    </Storyboard>
</Page.Resources>
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="2*"/>
        <RowDefinition/>
        <RowDefinition/>
        <RowDefinition Height="2*"/>
    </Grid.RowDefinitions>
    <Grid Grid.RowSpan="2">
        <Grid.RowDefinitions>
            <RowDefinition Height="2*"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Rectangle Stroke="Black" Fill="#FF4E608F"/>
    </Grid>
    <Grid x:Name="grid" Grid.Row="2" Grid.RowSpan="2" Canvas.ZIndex="1">
        <Grid.Projection>
            <PlaneProjection CenterOfRotationX="0" CenterOfRotationY="0"/>
        </Grid.Projection>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition Height="2*"/>
        </Grid.RowDefinitions>
        <Interactivity:Interaction.Behaviors>
            <Core:EventTriggerBehavior EventName="Tapped">
                <Media:ControlStoryboardAction Storyboard="{StaticResource FlipBottomStoryboard}"/>
            </Core:EventTriggerBehavior>
        </Interactivity:Interaction.Behaviors>
        <Rectangle Fill="#FF3DDA24" Stroke="Black" Grid.Row="1"/>
    </Grid>
    <Rectangle Stroke="Black" Grid.Row="1" Grid.RowSpan="2">
        <Rectangle.Fill>
            <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                <GradientStop Color="Black" Offset="0"/>
                <GradientStop Color="#FFA65757"/>
                <GradientStop Color="#FF0A2E26" Offset="0.966"/>
            </LinearGradientBrush>
        </Rectangle.Fill>
    </Rectangle>

</Grid>

简而言之,下半部分上的栅格在点击时为其旋转X设置动画。 问题在于,在emulator(WVGA 4英寸512mb)上,这很有效,但在设备(lumia 630 512mb)上,动画会从初始位置跳到最后。帧速率也下降到30


欢迎提供任何帮助

您是否尝试过用普通颜色替换渐变?@Festyk否我不知道为什么您认为它会有用?在任何情况下,具有渐变颜色的零件都不会设置动画。下面的部分有。可能是一些渲染问题?我想出了另一个主意:您可以将CacheMode=“BitmapCache”添加到动画网格中。@Festyk也尝试过。不工作:(谢谢,我可能有一些有趣的信息给你。我在我的lumia 820上测试了你的代码,它工作正常,没有任何延迟。