私が最初にやりたかったことは、進行状況ダイアログをアプリケーション リスト アクティビティに追加することでした。アクティビティはそれほど時間はかかりませんが (いずれにしてもそれほど時間はかかりません)、json の解析からデータを解析してリスト アクティビティに埋め込むアクティビティがユーザーに悪い印象を与えるときに、UI が応答しなくなることは望ましくありません。私を助けてください
質問する
86 次
1 に答える
0
AsyncTask を使用して、データの解析中に進行状況ダイアログを表示します
private class DownloadingProgressTask extends
AsyncTask<String, Void, Boolean> {
private ProgressDialog dialog = new ProgressDialog(ShowDescription.this);
/** progress dialog to show user that the backup is processing. */
/** application context. */
protected void onPreExecute() {
this.dialog.setMessage("Please wait");
this.dialog.show();
}
protected Boolean doInBackground(final String... args) {
try {
downloadFile(b.getString("URL"));
return true;
} catch (Exception e) {
Log.e("tag", "error", e);
return false;
}
}
@Override
protected void onPostExecute(final Boolean success) {
if (dialog.isShowing()) {
dialog.dismiss();
}
if (success) {
Toast.makeText(ShowDescription.this,
"File successfully downloaded", Toast.LENGTH_LONG)
.show();
//imgDownload.setVisibility(8);
} else {
Toast.makeText(ShowDescription.this, "Error", Toast.LENGTH_LONG)
.show();
}
}
}
于 2012-06-27T05:27:11.220 に答える