我使用SQLite顯示一些數據。當我點擊一個按鈕數據來自數據庫。這需要一些時間。那時屏幕是黑色的。那時我想在數據顯示之前顯示旋轉微調器。有任何想法嗎?在顯示數據前顯示旋轉進度
1
A
回答
1
的Android爲實現你想要的東西提供了一個ProgressDialog。
0
您不應該在UI線程中執行長時間運行的任務,因爲這會阻止UI重繪並使應用程序看起來沒有響應。
使用AsyncTask在後臺執行長時間運行的任務,同時仍然更新屏幕。
1
首先我想建議看看 AsyncTask頁面,以便您準確瞭解 AsyncTask。
現在,實現的AsyncTask,如下所示:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new performBackgroundTask().execute();
}
private class performBackgroundTask extends AsyncTask <Void, Void, Void>
{
private ProgressDialog Dialog = new ProgressDialog(main.this);
protected void onPreExecute()
{
Dialog.setMessage(getString("Please wait..."));
Dialog.show();
}
protected void onPostExecute(Void unused)
{
Dialog.dismiss();
// displaying all the fetched data
}
@Override
protected Void doInBackground(Void... params)
{
// implement long-running task here i.e. select query/fetch data from table
// fetch data from SQLite table/database
return null;
}
}
享受!
0
你可以看一下標準的音樂選擇器爲如何做到這一點了一個例子: https://android.googlesource.com/platform/packages/apps/Music/+/master/src/com/android/music/MusicPicker.java
除了整個「查詢必須關閉主UI線程來完成,」這說明而一個超靜定進度首先加載其數據,一旦數據可用,即會退出列表。開始查詢的功能是在這裏:
https://android.googlesource.com/platform/packages/apps/Music/+/master/src/com/android/music/MusicPicker.java#581
佈局已經形成一個框架佈局與另一容器中的列表視圖保持進度指示器和標籤。這些可見度變化,控制列表或進度指示器是否顯示:
https://android.googlesource.com/platform/packages/apps/Music/+/master/res/layout/music_picker.xml
相關問題
- 1. 獲取旋轉度和度數顯示
- 2. 顯示當前進度
- 3. 顯示/隱藏旋轉前的控件
- 4. 角度2旋轉木馬不顯示
- 5. 數據加載時顯示進度條
- 6. 顯示進度條
- 7. 在NSSearchField內顯示進度指示器
- 8. 角度顯示數據
- 9. 在Android中旋轉後未顯示ImageView
- 10. 在RecyclerView中旋轉後顯示存儲的數據
- 11. 如何在旋轉滑塊中顯示acf元數據陣列
- 12. 如何在旋轉木馬滑塊中以角度2顯示Json數據?
- 13. 在顯示警告對話框前不顯示進度對話框
- 14. 顯示數據 - 數據未顯示
- 15. 顯示對象在玩家面前,而不考慮其旋轉
- 16. 進度條未顯示進度條
- 17. DownloadStringAysnc - 不顯示進度
- 18. XStream Java顯示進度
- 19. NSProgressIndicator沒有顯示進度
- 20. 顯示Eclipse mini進度條?
- 21. DotNetZip - 顯示提取進度?
- 22. 顯示上傳進度
- 23. NSImage中initWithContentsOfFile:顯示進度
- 24. 進度微調不顯示
- 25. WPF進度條未顯示
- 26. 顯示javascript執行進度
- 27. 如何顯示sftp進度
- 28. 進度條不顯示
- 29. 顯示十進制度
- 30. QProgressBar沒有顯示進度?