31 Days of Windows Phone | Day #3 The Back Button Paradigm

本文转自jeffblankenbug blog.   http://www.jeffblankenburg.com博客,已每天笔记的形式发表Windows Phone 7 文章.目前JeffblankBug  的Windows Mango 31开发日记 文章已经写到第24天了。由于自己已经看他的博客时很快就看完了,看了以后没有什么感觉,现在用笔记的的形式记录下来,加深影响,加深理解,希望不要看过后就全忘记了。

 上一篇介绍了页面之间导航,我们可以简单的调用NavigationService实现不同页面之间跳转。我们有简单的提到返回按钮,在这编文章里将介绍回退按钮复杂功的功能。因为在这里将介绍怎样重新覆盖回退按钮。 

 How The Back Button Work

  回退按钮式怎样工作的。 

  你可以想象一下这里的回退按钮就向浏览器的后退按钮,你能后选择后退返回到你原浏览过的历史页面,你可以返回到多站点的历史页面面,Windows Phone 的回退按钮功能也是相同的,你可以通过后退按钮返回到你以前在同一应用内曾经访问过的页面,还可以返回到其它应用你曾经访问的历史页面。

   例如:

   1、打开联系人功能

   2、从联系人列表中选择“jeffblankenburg”

   3、选择家庭地址,(查看地址在地图应用上的位置)

   4、选择开始按钮

   5、开始玩游戏

   当我们选择后退按钮,可以从列表中倒序向前返回所有的页面。

Overriding The Back Button

  重新覆盖返回按钮功能。

  是的,你可以重新覆盖返回按钮的功能呢。可以禁止返回到历史页面的功能。 

  例如:你需要启动弹出对话框风格的页面,这时候如果不禁用回退按钮,可能会退出应用或返回到你不是你需要的页面,你仅仅只需要关闭弹出对话风格页面而已。

  还有就是你游戏是依赖于及时在线的。这时候就不适合应用回退按钮终止游戏,可以通过回退按钮暂停游戏。以上在执行的时候需要参考如下原则:

  1、你必须考虑后退按钮发生的在某个时间点。

  2、如果用户第二次选择后退按钮,那就应该用默认行为发生。

  3、如果用户选择回退按钮暂停游戏,如果用户第二次选择回退是应该又用户实现回退原因功能,

  一下是禁止回退按钮功能的代码:


protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)

{    
            e.Cancel = true;  

  

} 

下一篇将介绍设备方向。怎样操控竖屏和横屏。

  

原文地址:https://www.cnblogs.com/andyyu/p/2262886.html