工作我使用的是AsyncTask
從服務器下載數據的一些大的量我的AsyncTask做工精細,所以我增加了一個進度條,使一切美麗的,但問題是,當它的運行進度條獲得凍結一半時和我使用進度對話框,也同樣凍結了一半時,進度不是裏面的AsyncTask
private class downloadChannelsfromserver extends
AsyncTask<String, Void, String> {
ProgressDialog progressDialog;
@Override
protected String doInBackground(String... url) {
String data = "";
try {
// Fetching the data from web service
data = getLinksfromServer(url[0]);
} catch (Exception e) {
Log.d("Background Task", e.toString());
}
return data;
}
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
progressDialog= ProgressDialog.show(Settings.this, "Synchronicing","Synchronicing", true);
}
@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
JSONObject json;
try {
json = new JSONObject(result);
db.deleteAll();
final JSONArray jsonArray = json.getJSONArray("XXXX");
for (int i = 0; i < jsonArray.length(); i++) {
///use for insert datainto database
}
finish();
progressDialog.dismiss();
} catch (JSONException e) {
// TODO Auto-generated catch block
Log.e("settings", "", e);
progressDialog.dismiss();
}
}
能有人告訴我,爲什麼出現這種情況,請
你在哪裏更新你的進度條狀態? – nKn
是類downloadChannelsfromserver,是設置活動的內部類嗎? –
試圖拒絕你的對話框打電話之前在活動結束 完成(); progressDialog.dismiss(); 交換它們? – Abs