2016-05-10 87 views
-2

我想了解如何加載一個屏幕,而我的所有方法和數據完全加載完成。我注意到Gmail,Instagram等應用在屏幕完全加載時在中間有一個白色的加載圖標,而我的一些數據需要一段時間才能加載,所以我想知道如何在屏幕上顯示一個加載屏幕,而不是在準備就緒時閃爍數據。如何在android上加載數據時有加載屏幕?

我想過的一個想法是在相對佈局和負載中圍繞整個視圖,使相對佈局內的佈局可見,然後切換到另一個視圖......我不知道這是否是最聰明的方式,但讓我知道是否有另一種更有效的方法。我將需要這個用於每個屏幕,因爲它調用服務器 - 預緩存,也有一些屏幕不會緩存數據,因爲它沒有任何意義。

讓我知道是否有任何簡單的庫或模塊化技術,我可以在我的XML佈局計劃之外實現。

+0

首先,這不是屏幕。如果您正在使用AsyncTask,那麼您可以使用進度對話框顯示進度或加載視圖。檢查此文檔 - http://developer.android.com/reference/android/app/ProgressDialog.html –

+0

完整教程在這裏。 http://www.tutorialspoint.com/android/android_progressbar.htm –

+1

我正在使用Retrofit來獲取數據,哪些工作異步,是否提供了一個進度對話框或簡單的方法來實現它呢? – Lion789

回答

1

聲明你的對話框

ProgressDialog progress; 

當你準備好開始進度對話框:

progress = ProgressDialog.show(this, "dialog title", 
"dialog message", true); 

,並使它消失時,即可大功告成:

progress.dismiss(); 
+1

謝謝有沒有辦法掩蓋整個屏幕,改變對話框覆蓋一切? - 或爲其設置自定義視圖? – Lion789

+0

如果此答案提供了您的解決方案,請接受它作爲解決方案 –

0

這是非常多的。您可以通過不同的佈局加載進度條或與進度條相同的活動來進行不同的活動。

如果你下載了大量的數據,但你不想讓用戶等待你可以下載所有的數據ñ保存在設備上。下次如果用戶打開應用程序,則向他們顯示保存的數據中的數據,然後在後臺更新它的兩側​​。