在以下情况下使用进度对话框的最佳方式是什么..
//start progress dialog here.
RequestInfoFormServer();
ProcessThatInfo();
return;
答案 0 :(得分:3)
如果您尚未使用,则应使用AsyncTask
在后台执行所有长时间运行的任务。
如果您计划进行大量的互联网操作,您还可以使用服务来处理所有互联网内容。
1)使用
构建Progress Dialog
ProgressDialog progressDiaog = new ProgressDialog();
研究这个构造函数和更多自定义的方法
为了获得更好的用户体验,如果将对话框设置为可取消,则如果取消对话框,则还应取消网络活动。
2)创建AsyncTask
。在其onPreExecute()
方法中,使用以下内容显示进度对话框:
progressDialog.show();
3)在doInBackground()
中,执行所有网络内容:
RequestInfoFormServer();
ProcessThatInfo(); //I hope this doesn't have to do with the UI
return;
4)然后在onPostExecute()
中
- 完成在UI上完成的所有工作
- 如果您不必再次显示相同的对话框,请使用progressDialog.cancel()
关闭进度对话框。
如果您涉及任何其他问题,请回复。