2010-07-30 87 views
1

我是新來的android現在我正在開發一個應用程序下載文件。 我想在文件正在下載時顯示進度條。我不知道在哪裏檢查顯示進度條的條件,也不知道如何解除進度條。如何關閉進度欄?

回答

0

這與AsyncTask幫助(智能底色線程)和ProgressDialog

時候做的AsyncTask開始,我們提出一個progressdialog與不確定狀態,一旦任務完成後,我們關閉對話框。

示例代碼
什麼適配器確實在這個例子就明白了,你需要使用的AsyncTask以顯示該進程的對話框並不重要,更重要的。

private class PrepareAdapter1 extends AsyncTask<Void,Void,ContactsListCursorAdapter > { 
    ProgressDialog dialog; 
    @Override 
    protected void onPreExecute() { 
     dialog = new ProgressDialog(viewContacts.this); 
     dialog.setMessage(getString(R.string.please_wait_while_loading)); 
     dialog.setIndeterminate(true); 
     dialog.setCancelable(false); 
     dialog.show(); 
    } 
    /* (non-Javadoc) 
    * @see android.os.AsyncTask#doInBackground(Params[]) 
    */ 
    @Override 
    protected ContactsListCursorAdapter doInBackground(Void... params) { 
     cur1 = objItem.getContacts(); 
     startManagingCursor(cur1); 

     adapter1 = new ContactsListCursorAdapter (viewContacts.this, 
       R.layout.contact_for_listitem, cur1, new String[] {}, new int[] {}); 

     return adapter1; 
    } 

    protected void onPostExecute(ContactsListCursorAdapter result) { 
     list.setAdapter(result); 
     dialog.dismiss(); 
    } 
} 
+0

我在onProgressUpdate中顯示進度條,它不會關閉onPostExecute。然後我在onPreExecute上顯示它,它的工作原理非常完美。 +1 – 2015-03-30 22:22:13

+1

OP的問題在ProgressBar而不是ProgressDialog上。那麼任何方式來消除ProgressBar? – iamprem 2015-05-31 22:25:04