Windows Phone 8:如何实现页面导航动画?

21

我是Win Phone 8开发新手,在经过疲惫无果的谷歌搜索后,我在这里发布这个简单的问题:

如何使页面导航动起来?

是的,我知道如何从一个页面导航到另一个页面:

NavigationService.Navigate(new Uri("/AnotherPage.xaml", UriKind.Relative));

但是这种导航是瞬间完成的,不包括任何过渡效果。请帮忙,谢谢!


5个浏览量,没有答案,这么难吗? - craftsman
可能是手机页面之间的转换的重复问题。 - Kevin Gosse
2
嗨KooKiz,感谢您指出链接。那里选择的答案指向另一个链接,该链接显示我未被授权查看链接。另一个答案谈论了故事板,但没有说明如何创建故事板。 - craftsman
2个回答

65

使用Nuget安装Windows Phone Toolkit:https://nuget.org/packages/WPtoolkit

接下来,在app.xaml.cs文件中:

RootFrame = new TransitionFrame();

然后,在您的页面XAML中:

xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"

并且

<toolkit:TransitionService.NavigationInTransition>
    <toolkit:NavigationInTransition>
        <toolkit:NavigationInTransition.Backward>
            <toolkit:TurnstileTransition Mode="BackwardIn" />
        </toolkit:NavigationInTransition.Backward>
        <toolkit:NavigationInTransition.Forward>
            <toolkit:TurnstileTransition Mode="ForwardIn" />
        </toolkit:NavigationInTransition.Forward>
    </toolkit:NavigationInTransition>
</toolkit:TransitionService.NavigationInTransition>
<toolkit:TransitionService.NavigationOutTransition>
    <toolkit:NavigationOutTransition>
        <toolkit:NavigationOutTransition.Backward>
            <toolkit:TurnstileTransition Mode="BackwardOut" />
        </toolkit:NavigationOutTransition.Backward>
        <toolkit:NavigationOutTransition.Forward>
            <toolkit:TurnstileTransition Mode="ForwardOut" />
        </toolkit:NavigationOutTransition.Forward>
    </toolkit:NavigationOutTransition>
</toolkit:TransitionService.NavigationOutTransition>

6
在http://www.geekchamp.com/articles/windows-phone-7-navigation-transitions-step-by-step-guide上可以看到;)同样适用于Wp8。 - Christian Graf
这绝对是更好的答案,应该是“答案”。 - Abbas
如何设置持续时间?它太快了 :p - Misters
@Misters:您可以从Codeplex下载源代码并进行更改。故事板在此处定义:http://phone.codeplex.com/SourceControl/latest#Microsoft.Phone.Controls.Toolkit/Transitions/Storyboards - trydis

11

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接