这么简单,但我遇到了很大的问题。
编辑:我希望我的ProgressDialog在其他类运行时运行 - 不要在asyncTask中调用,因为有多个asyncTasks被调用。
我的主要活动(索引)调用另一个类aTask,它调用AsyncTask从Yelp中获取一些数据。当aTask返回数据时,index会启动一个新活动。
我希望索引在aTask运行时显示进度对话框。所以我使用here的答案在索引中放置一个进度对话框。
但是,进度条仅在aTask结束后显示,这完全违背了目的。
以下是代码:
mButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ProgressDialog.show(IndexActivity.this, "Loading", "Wait while loading...");
ATask at = new ATask(preferencesMap, IndexActivity.this);
final ArrayList<Business> locations = at.getLocations();
Intent intent = new Intent(IndexActivity.this, BTask.class);
intent.putExtra("EXTRA_DIRECTIONS_STEPS", locations);
intent.putExtra("EXTRA_MAP_LOCATIONS", locations);
startActivity(intent);
}
});
答案 0 :(得分:0)
大多数工作是将Progress Dialog
添加到真正的异步任务而不是某些同步任务。您的计算机需要时间来执行Progress Dialog脚本,如果任务不在线程或其他Async事件中,则不能。在SO上查看其他问题并始终有一个主题。
答案 1 :(得分:0)
This应该是明确的答案,至少在我的情况下。
易于实现,即使您正在调用asyncTasks等也能正常工作