【发布时间】:2014-03-06 20:03:50
【问题描述】:
我有一个片段对话框,其中包含设备上安装的所有应用的列表。
有时加载需要一些时间,我想在加载时显示ProgressDialog。
我尝试了以下代码,但没有任何好处:
@Override
public void onAttach(Activity activity) {
// Show progress dialog
showProgressDialog(activity);
super.onAttach(activity);
}
private void showProgressDialog(Activity activity) {
mProgressDialog = new ProgressDialog(activity);
mProgressDialog.setTitle(R.string.loading);
mProgressDialog.setMessage(getString(R.string.shared_options_wait_while_applist_loads));
mProgressDialog.show();
}
onCreate 加载整个列表和应用图像,然后我使用:
@Override
public void onStart() {
stopProgressDialog();
super.onStart();
}
private void stopProgressDialog() {
mProgressDialog.dismiss();
}
现在我正在考虑在异步任务中加载整个列表,但我不知道异步任务应该做什么,它可能应该加载列表,但是我如何等待列表并获取列表什么时候准备好? (我认为应该使用回调之类的东西?)
谢谢
【问题讨论】:
-
您可以在
onPostExecute类上的onPostExecute方法上使用UI,创建适配器并在该方法上设置您的列表,您可以在onPreExecute上显示您的progressDialog,这个两种方法与UI thread一起使用 -
有什么例子可以参考一下吗?谢谢