2012-04-13 28 views
1

基本上當一個菜單項被壓在我的應用程序需要用戶到一個新的屏幕。 但是現在我想要在網上獲取一點數據(時間/日期),一旦獲得數據,它就會顯示在頁面上的某個地方。 目前新屏幕不會加載,直到應用程序獲取數據後纔會暫停幾秒鐘,而不是立即加載屏幕,然後在最終顯示下載的數據時顯示它。Android的 - 如何執行代碼*後*一個進程中加載​​

我試過使用onStart方法,因爲它在onCreate之後被調用,所以我認爲頁面會被創建並顯示,然後onStart被調用,但不會發生,因爲它在網上獲取數據,顯示已加載的頁面。

我該如何排序呢? 謝謝

回答

1

對於任何類型的加載操作,您應該考慮使用AsyncTask結合ProgressDialog以便通知您的用戶您在後臺執行某些操作。

請記住,您只能與您的AsyncTaskonPreExecute()onPostExecute()方法中的UIThread進行交互。

所以你的情況,你可能會想火的AsyncTask您的活動的onCreate()方法,顯示ProgressDialog在onPreExecute()方法,然後顯示您的信息,並隱藏ProgressDialog在onPostExecute

這幾乎是不可能消除這一延遲,你在說什麼。所以你最好正確處理它。

希望這有助於回答你的問題。

相關問題