Windows Phone 7 中的切換應用

來源:互聯網
上載者:User

修正: 

區別於案頭作業系統,Window Phone不支援應用程式在後台運行。這是為了避免了多個應用程式競爭有限的手機資源,由此避免了的處理速度和電池電量的急速下降。這裡Windows Phone 7 提供了一個新的概念,Tombstoning。在Windows Phone中,由於使用者離開當前應用程式,作業系統暫停該應用程式,但儲存瞬間狀態,以便隨時恢複 ,這個過稱稱為Tombstoning。

關於更多的大家可以去看下這篇部落格 Windows Phone 7中的Tombstoning 

像Windows 系統的多任務一樣,Windows Phone 7中也可以切換應用程式,注意不是關閉程式,而是切換。關閉程式是指將程式徹底從記憶體中移除了,但是切換程式,則該程式只是被deactivate了。

這裡不具體討論Windows Phone 7在啟動時做了些什麼,在關閉時做了些什麼,在切換任務時做了些什麼,本文僅是以PhoneApplicationService實現切換任務時儲存應用程式時的狀態,下次開啟程式時原來之前儲存的狀態。至於前面那些問題,有時間會寫部落格跟大家分享。

PhoneApplicationService類

位於Microsoft.Phone.Shell下的PhoneApplicationService類提供了獲得應用程式生命週期資訊的途徑。這些資訊包括應用程式閑置狀態,以及應用程式啟用與否時的狀態的管理。

來自MSDN解解:

The PhoneApplicationService class provides access to various aspects of the application’s lifetime. This includes management of the application’s idle behavior and management of the application’s state when it becomes active or inactive.

我們可以看一下這個類的結構,我們在下面的代碼中會用到該類的兩個屬性Current和State,至於其他的有興趣的朋友可以自行研究。

Current可以擷取當前應用程式的PhoneApplicationService的執行個體

State是一個基於索引值對的IDictionary,用來儲存你想儲存當前應用程式的狀態

實現步驟

1. 建立一個Windows Phone 7 應用程式,向名為ContentPanel的Grid中添加TextBox,命名為tbUserName,Text屬性清空

2. 雙擊tbUserName,導航到後置代碼,編寫tbUserName的TextChanged事件,如

3. 編輯應用程式啟動事件,代碼如

我們可以先運行下程式,在輸入框中輸入一些字母,然後按後退鍵,或者啟動鍵,再次進入應用程式時,輸入框仍然是空的。

4. 接下來我們在App.xaml.cs中編寫如下代碼,設定狀態和載入狀態方法

5. 在Application_Launching、Application_Activated 中調用載入方法,Application_Deactivated、Application_Closing中調用設定狀態方法

6. 然後我們再來試一下在步驟3中的操作,會發現再次進入應用程式時,剛剛輸入的內容還在輸入框中 .

原始碼下載:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.