我正在創建一個應用程序,在該應用程序中我必須從Internet獲取一些數據並在UI上將其顯示給用戶。 我在AsyncTask
onPreExecute()
方法和onPostExecute()
方法中創建了一個進度條,我已經將所有數據傳遞給另一個Activity和startActivty。然後我忽略進度對話框。但是,它不好。 當第二個activity
在onCreate
方法中的UI上加載數據時,ProgressBar會掛起。 我該如何解決這個問題。如何顯示從互聯網加載數據和在UI上顯示內容的相同進度條
這裏是我的代碼:
@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);
}
您可以發佈您的代碼而不是DECP – DjHacktorReborn 2013-03-09 09:08:48
我有更新我的代碼 – 2013-03-09 09:20:46
嘗試proDialog.dismiss();在mContext.startActivity(secActivity)之前; – DjHacktorReborn 2013-03-09 09:40:03