我正在使用從webservice獲取n個記錄的web服務。我正在使用WS客戶端來調用Web服務。現在我想要有一個進度條來顯示已加載n個數據中的多少個數據。有沒有可能實現這個目標?我使用AsyncTask在後臺調用WS。如何在Webservice加載數據時顯示進度條?
1
A
回答
7
嘗試是這樣的 來說,這基本上顯示,而異步任務運行
public class AndroidAsyncTaskProgressBar extends Activity {
ProgressBar progressBar;
Button buttonStartProgress;
public class BackgroundAsyncTask extends
AsyncTask<Void, Integer, Void> {
int myProgress;
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
Toast.makeText(AndroidAsyncTaskProgressBar.this,
"onPostExecute", Toast.LENGTH_LONG).show();
buttonStartProgress.setClickable(true);
}
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
Toast.makeText(AndroidAsyncTaskProgressBar.this,
"onPreExecute", Toast.LENGTH_LONG).show();
myProgress = 0;
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
while(myProgress<100){
myProgress++;
publishProgress(myProgress);
SystemClock.sleep(100);
}
return null;
}
@Override
protected void onProgressUpdate(Integer... values) {
// TODO Auto-generated method stub
progressBar.setProgress(values[0]);
}
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
buttonStartProgress = (Button)findViewById(R.id.startprogress);
progressBar = (ProgressBar)findViewById(R.id.progressbar_Horizontal);
progressBar.setProgress(0);
buttonStartProgress.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new BackgroundAsyncTask().execute();
buttonStartProgress.setClickable(false);
}});
}
}
1
要執行這種進度更新的更新進度條的例子,你需要讓你的web服務返回導致部分不完全。像n個記錄一樣,webservice可以返回結果n/p,一次,並使用publishProgress方法通知事件線程關於任務的百分比,postEexcute完成webservice調用和解析。
相關問題
- 1. 數據加載時顯示進度條
- 2. 在Datagridview上加載數據時顯示進度條
- 3. 加載時顯示進度條
- 4. 如何顯示進度條,直到數據加載爲止?
- 5. 加載Firebase數據庫時顯示進度條
- 6. Android:如何在將數據加載到WebView時顯示進度條?
- 7. 如何在加載數據並填入recyclerview時顯示進度條?
- 8. 如何在加載頁面時顯示進度條
- 9. 如何在加載某些控件時顯示進度條?
- 10. 如何在加載時顯示進度條,使用ajax
- 11. 如何在加載新的android碎片時顯示進度條?
- 12. 顯示進度條在加載列表
- 13. 在getJSON加載數據期間顯示jQuery模態進度條
- 14. RadGrid進度條,同時加載數據
- 15. JTable加載值的變化,加載時顯示進度條
- 16. 從Firebase數據庫加載數據時顯示進度
- 17. 加載數據庫 - 如何在progressBar中顯示進度?
- 18. 顯示「加載:進度條」在Android的意圖,直到數據加載
- 19. 顯示下載進度條
- 20. 下載時顯示進度條
- 21. 如何在瀏覽器中顯示內容加載進度條?
- 22. 如何在iOS SDK中顯示圖像的加載進度條
- 23. 如何在UITextField底部顯示加載進度條
- 24. 如何在加載WebView之前顯示佈局的進度條
- 25. 如何在加載SmartImageView之前顯示佈局的進度條
- 26. 如何在WebView上顯示加載圖像或進度條
- 27. 當無盡滾動正在加載更多數據時顯示進度條
- 28. 如何在從遠程數據庫加載數據時在android中顯示進度條?
- 29. 在WPF中查看數據加載時顯示進度圓
- 30. 在Android中加載數據庫時顯示進度對話框
嘿Aalok,謝謝你的幫助。嘗試此 – Shraddha
現在檢查我的答案,以獲得更好的參考,請嘗試http://android-er.blogspot.in/2010/11/progressbar-running-in-asynctask.html –
謝謝,它與一些修改一起使用與webservice響應。 – Shraddha