2010-11-25 85 views
2

我剛剛瞭解如何在頁面和墓碑之間導航。我想知道是否有人能指點我一些很好的例子,它不僅向我展示瞭如何正確使用導航的基礎知識,而且還介紹了更復雜和先進的導航問題的好例子?導航和墓碑 - 最佳實踐

  • 我在瀏覽其他頁面和導航時遇到了一些內存泄漏問題?
  • 當頁面完成其工作後(我不想在它完成後我將其實例掛起)時,是否有關閉頁面調用?
  • 另一個問題是如何保持狀態,如果應用程序得到墓碑(仍然試圖圍繞這個詞包裝我的頭)。

謝謝!

回答

4

沒有關閉頁面調用,操作系統在退出並釋放已用內存時自動關閉頁面(所以這裏不應該有泄漏)。

這裏的一些資源涵蓋了墓碑和高級導航概念。

Understanding the Windows Phone Application Execution Model, Tombstoning, Launcher and Choosers, and Few More Things That Are on the Way – Part 1Part 2Part 3

Introducing the concept of 「Places」 - Peter Torr's Blog

Redirecting an initial navigation - Peter Torr's Blog

1

我喜歡考慮WP7導航,就像只有後退按鈕的簡單瀏覽器。 Naviation模型基於堆棧模式(後進先出),需要通過全部才能返回到第一頁。這不是PC用戶習慣的,但在移動世界是最好的解決方案之一。 你必須堅持這種模式,永遠不要「去主頁」按鈕 - 你的應用程序不會肯定通過認證(有一些解決方案與優秀,但我wouldnt推薦)。 很多頁面可以讓用戶生氣,這就是爲什麼一個好主意最多有3到5頁。例如,第一頁用戶選擇他要做什麼,下一頁是登錄頁面,然後是更復雜的界面使用全景和透視控制。

給簡單的瀏覽器模型添加cookie。當你的瀏覽器加載一個頁面時,它會設置一個包含一些信息的cookie,然後關閉瀏覽器,當你回到頁面時,它可以從該cookie獲得以前的狀態。墓碑是非常小的。 - link。一些更多info about tombstoning

我在瀏覽其他頁面和導航時遇到了一些內存泄漏問題?

你是什麼意思的內存泄漏?你在託管框架中工作。

當頁面完成其工作後(我不想在它完成後我將它的一個實例掛起)時,是否有關閉頁面調用?

你不必這樣做。每當你進入下一頁時頁面被破壞,除非線程仍然在那裏工作。

另一個問題是如何保持狀態,如果應用程序得到墓碑(仍然試圖圍繞這個詞包裝我的頭)。

基本上是要開發管理這個。這不是強制性的,但提供了不錯的用戶體驗。

1

另一個問題是我如何保持狀態,如果該應用程序被墓碑(仍然試圖環繞這個詞我的頭)。

使用隔離儲存。

0

你可以看看到哥倫布MVC框架,我最近出版的WP7源代碼(http://columbus.codeplex.com/)。哥倫布解決導航和墓碑(提供強大的類型導航歷史和視圖模型,可以生存立碑)。