我在Android上工作.将有一个菜单,当访问时,从服务器(500+)请求相当大的用户列表,大约需要5秒钟.在此期间,应用程序冻结.我如何显示进度hud(如MBProgressHud),其中用户意识到某些事情正在发生,并且在完成之前无法触及它.
MBProgressHud:

使用AsyncTask:
public class MyAsyncTask extends AsyncTask<Void, Void, Result>{
private Activity activity;
private ProgressDialog progressDialog;
public MyAsyncTask(Activity activity) {
super();
this.activity = activity;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = ProgressDialog.show(activity, "Loading", "Loading", true);
}
@Override
protected Result doInBackground(Void... v) {
//do your stuff here
return null;
}
@Override
protected void onPostExecute(Result result) {
progressDialog.dismiss();
Toast.makeText(activity.getApplicationContext(), "Finished.",
Toast.LENGTH_LONG).show();
}
}
Run Code Online (Sandbox Code Playgroud)
从活动中调用它:
MyAsyncTask task = new AsyncTask(myActivity.this);
task.execute();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1319 次 |
| 最近记录: |