Windows Phone 7 開發 31 日談——第3日:返回鍵

By Jeff Blankenburg

本文是Windows Phone 7 開發 31 日談” 系列的第3日。

    昨天,我們討論了頁面導航,以及如何簡單的調用NavigationService從而到達程序中的不同頁面。簡要地提到了返回鍵,但返回鍵的複雜性是值得在本系列中單獨成文的,主要是因爲你可以重寫(override) 返回鍵的行爲。

返回鍵如何工作

    和瀏覽器中的返回按鈕很相似。你可以點擊它通過會話的決策信息後退。它能讓你跨越多個站點,還有這些站點中的每個頁面。Windows Phone中的返回鍵工作方式與之相同。它能讓你回到之前訪問過的頁面,甚至是跨應用程序!

例如,如果我:

  1. 打開人物中心(People Hub)。
  2. 在聯繫人列表中選擇“Jeff Blankenburg”。
  3. 點擊他的家庭地址(使我們進入地圖應用程序)。
  4. 點擊開始按鈕。
  5. 開始遊戲。

當點擊返回鍵時,會沿着發生的事件列表後退。

重寫返回鍵行爲

    是的,你沒看錯!你可以如你所想重定義返回鍵的行爲。但這不表明允許你通過這種能力做一些不負責任的行爲。在任何你想重寫返回鍵行爲的時候,你應該確認你所認爲的“返回”的意思和你的用戶所想的是一樣。

    例如,你打開了一個彈出框,用戶的肌肉記憶可能會使他們按下返回鍵來關閉彈出框。在這種情況下,他們的本意不是離開應用程序,“返回”僅僅意味着擺脫彈出的對話框。

    另一個例子,如果你有個遊戲依賴於計時器或實時動作,使用返回鍵來暫停遊戲就比較合適而非讓人立即離開。下面是一些此類事件的指導原則:

  1. 你應該設身處地爲用戶考慮那一時刻“返回”對他們意味着什麼。
  2. 如果再次用戶按下返回鍵,你應該讓默認行爲執行。
  3. 使用返回鍵暫停遊戲是個非常好的想法,但再按一次意味着他們真的想返回到前面,那就得讓他們能後退。

這是在Windows Phone中重寫返回鍵的代碼:

明天我們討論設備的方向以及如何在程序中處理橫縱方向問題。

 

原文地址:http://www.jeffblankenburg.com/post/31-Days-of-Windows-Phone-7c-Day-3-The-Back-Button-Paradigm.aspx

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章