通过删除阻止呼叫解决了未显示的进度对话框。
我的目的是从互联网上下载大量数据并让最终用户了解下载状态,但是我必须等待数据完成下载才能继续下一步,因此我必须阻止来自执行的代码。
阻止会导致进度对话框不显示或冻结。我需要提示以最佳方式实现这些任务。因为我的任务很简单,所以我觉得实施任务完全监听器有点过分,我想知道是否有其他方法可以解决我的问题?
答案 0 :(得分:1)
您可以使用:
@Override
protected void onPreExecute() {
dialog= ProgressDialog.show(YourActivity.this, "", "MessageYouWantToDisplay");
}
@Override
protected void onPostExecute(T result) {
dialog.dismiss();
}
通过键入以下内容来调用扩展AsycTask的类:
new NameOFClass().execute();
首先尝试将其作为测试,并在doInBackground方法中放置Thread.sleep()以了解其工作原理。然后在您的项目中使用它与您的真实方法,数据等。
答案 1 :(得分:0)
试试这个:::
@Override
protected void onPreExecute() {
dialog = new ProgressDialog(YourActivity.this);
dialog.setMessage("Progress start");
dialog.show();
Log.d(TAG, "Showing dialog");
}
@Override
protected void onPostExecute(T result) {
dialog.dismiss();
Log.d(TAG, "Dismissing dialog");
}