インターネットからデータを取得してUIでユーザーに表示する必要があるアプリを作成しています。AsyncTask
onPreExecute()
メソッドにプログレスバーを作成し、メソッドでonPostExecute()
すべてのデータを別のアクティビティとstartActivtyに渡しました。次に、進行状況ダイアログを閉じます。しかし、それは良くありません。メソッドのUIに2番目にactivity
ロードされたデータの場合と同様に、 onCreate
ProgressBarがハングします。この問題を解決するにはどうすればよいですか。
これが私のコードです:
@Override
protected void onPreExecute() {
proDialog = new ProgressDialog(mContext);
proDialog.setTitle("Support Manager");
proDialog.setMessage("Logging in ...");
proDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
proDialog.setIcon(R.drawable.ic_launcher);
proDialog.show();
super.onPreExecute();
}
@Override
protected RepresentativeData doInBackground(String... params) {
JSONObject result = null;
try {
result = client.reprentativeDetailNode(params[0]);
LoginJsonParsing loginJsonParsing = new LoginJsonParsing();
Details = loginJsonParsing
.Details(result);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return Details;
}
@Override
protected void onPostExecute(Data result) {
Intent secActivity = new Intent(mContext,YourRepresentative.class);
secAcitivity.putExtra("detail", result);
mContext.startActivity(secActivity);
proDialog.dismiss();
super.onPostExecute(result);
}