Windows Phone 7是否与Android noHistory活动属性等效?

时间:2011-07-04 13:40:53

标签: android windows-phone-7 lifecycle

注意:存在一些混淆,所以让我通过将其与Android中的类似功能进行比较来澄清我在Windows Phone 7中如何实现某些功能。

问题:

了解Windows Phone 7中页面之间的导航,我实现了两个页面A和B之间的双向导航,因此您可以从页面A导航到B和B导航到A.

为了说明的目的,让我说我像这样导航:A-> B-> A-> B

当退出应用程序时,我将再次强制通过每个页面,理想情况下,我只想通过A一次,和/或B一次,然后退出应用程序。

在Android中你可以通过在活动上将noHistory属性设置为“true”来实现,但是WP7呢?

更新:按照keyboardP的建议使用RemoveBackEntry我实现了我想要的。对于其他感兴趣的人,这是我使用的代码:

private void button1_Click(object sender, RoutedEventArgs e)
        {
            NavigationService.Navigate(new Uri("/FirstPage.xaml", UriKind.Relative));
            NavigationService.RemoveBackEntry();
        }

1 个答案:

答案 0 :(得分:2)

在7.0中,没有方法可以从导航堆栈中删除任何页面。但是,您可以下载一个有助于处理circular navigation的配方。您可以Non-Linear Navigation Service from here下载它,它基于this article

我不知道该配方是否与7.1(Mango)兼容,但是在NavigationService中Mango引入了一种名为RemoveBackEntry的新方法。您可以执行一些计算来计算删除最后一个条目的次数,以便用户在单击back button时在第一页上结束。