使用MvvmCross構建Windows Phone應用程序(8.1使用WinRT)。導航到使用ShowViewModel()的新視圖。但是當我點擊手機上的後退按鈕時,應用程序正在關閉,而不是導航回第一個視圖。我該怎麼做我想在返回按鈕時返回到第一個視圖?Windows Phone應用程序中的MvvmCross和後退按鈕
0
A
回答
4
我解決了它在我的viewmodel中使用一個接口和一個backbutton事件,然後我寫了一個客戶端實現它。在viewmodel中,我處理事件並在我的基類MvxViewModel中調用close方法。在我的博客上閱讀關於我的解決方案的更多信息,http://danielhindrikes.se/windows-phone/handle-windows-phone-back-button-pressed-when-using-mvvm/
3
這是一個更簡單的解決方案。爲所有從MvxWindowsPage派生的WP頁面創建一個基本類型。然後,處理返回鍵那裏,路線正確的信息給你的VM:現在
public abstract class MyBaseView : MvxWindowsPage {
public MyBaseView() {
this.InitializeComponent();
HardwareButtons.BackPressed += HardwareButtons_BackPressed;
}
void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e) {
if (Frame.CanGoBack) {
var vm = ViewModel as MyBaseViewModel;
if (vm != null) {
e.Handled = true;
vm.GoBackCommand.Execute(null);
}
}
}
}
,你也必須確保你有一個基礎視圖模型從MvxViewModel派生並從中派生所有虛擬機。該基礎虛擬機應該有一個GoBackCommand可觀察屬性,並且執行該命令應該執行一個簡單的Close(this)。
要看看有什麼引擎蓋下怎麼回事,看到此相關的問題:Windows Phone 8.1 Universal App terminates on navigating back from second page?
編輯 固定聲明。
相關問題
- 1. Windows Phone 7後退按鈕和應用程序墓碑?
- 2. Windows Phone 8後退按鈕
- 3. 在Windows Phone上中斷後退按鈕
- 4. 測試應用程序未能在後退按鈕... Windows Phone 7的
- 5. Windows Phone 7後退按鈕問題
- 6. windows phone 7應用程序 - 後退按鈕導致新頁面實例
- 7. 導航應用程序 - 後退按鈕
- 8. 後退按鈕關閉應用程序
- 9. Windows 10託管應用程序的後退按鈕
- 10. Windows Phone 7和後退按鍵指引
- 11. Android應用程序中的後退按鈕無法退出應用程序
- 12. 退出應用程序 - Windows Phone認證
- 13. Silverlight Windows Phone 7 - 使用硬件後退按鈕後丟失的按鈕事件
- 14. 如何退出Windows Phone 7.8應用程序中的循環和應用程序?
- 15. 在Windows Phone 7應用中使用WebBrowserTask的後退按鈕問題
- 16. 如何覆蓋Windows Phone應用程序中的相機按鈕?
- 17. windows phone 10上的硬件後退按鈕不起作用
- 18. 爲Windows Phone 8.1運行時覆蓋Prism中的後退按鈕
- 19. Ionic 2 - 防止退出應用程序硬件後退按鈕
- 20. 應用程序崩潰的後退按鈕/活動和意圖
- 21. 應用按後退按鈕當按下後退按鈕
- 22. Android引用應用程序,下一個和後退按鈕
- 23. windows-phone-7.1在設置後立即退出應用程序
- 24. 在Windows Phone應用程序中自定義單選按鈕
- 25. 應用程序按後退按鈕後拋出一個異常
- 26. 如何禁用iPhone應用程序中的後退按鈕
- 27. Windows Phone 7取消硬件後退按鈕不起作用
- 28. 在windows phone全景應用程序中控制前進和後退導航
- 29. 退出應用程序後退按鍵
- 30. 我的應用程序中的後退按鈕存在問題
在http://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn639128.aspx中的Win(P)RT應用程序中的後退按鈕上有一些建議 - 包括一些「HardwareButtons_BackPressed」代碼App.xaml.cs文件 – Stuart 2014-09-08 06:56:34