2017-06-14 41 views
0

我的應用程序有時重置UI初始UI狀態,就像第一次初始化後。Xamarin跨平臺:用戶界面重置後,睡眠和恢復

當有問題的應用程序發送到後臺/正在休眠時使用其他應用程序時發生此事件。然後,當我回到有問題的應用程序時,它會顯示UI的初始狀態(主頁面的初始狀態)。

我想我需要保存它的狀態,然後我最小化OnSleep()事件上的應用程序,並將它恢復回OnResume()事件。

我該怎麼做?

+1

我會讀取Android活動生命週期,但它聽起來像你需要做的是重寫'OnPause()'以保存任何信息和'OnResume()'加載它。 – Nick

+0

你解決了這個問題嗎?如果你還沒有,可否請你提供一些你的項目的詳細代碼? –

回答

0

我已經通過使用全局變量來存儲應用程序是否仍在運行來解決問題。

public MainPage() 
    { 
     InitializeComponent(); 

     if(Config.Config._RunningGetLocationThread == true) 
     { 
      lbl_Title.Text = "Tracker is running..."; 
      btn_StartTracking.Text = "Stop Tracking!"; 
     } 
     else 
     { 
      btn_StartTracking.Text = "Start Tracking!"; 
      lbl_Title.Text = "Tracker is not running"; 
     } 
    } 

Config.Config._RunningGetLocationThread == true是全局變量設置爲true,當應用程序第一次啓動。

我認爲應該有更好的方式來保存UI元素的狀態。如果有人知道節省州UI元素的最佳方式,請在此分享。