Java 进程对话框阻止
通过删除阻止调用,解决了未显示进度对话框的问题 我的目的是从internet下载大量数据,并让最终用户了解下载状态,但是我必须等待数据完成下载,以便继续下一步,因此我必须阻止代码执行 阻塞会导致进度对话框不显示或冻结。我需要一些技巧,以便以最佳方式执行这些任务。因为我的任务很简单,所以对我来说,实现任务完成侦听器似乎有些过火,我想知道是否有其他方法可以解决我的问题?试试这个::Java 进程对话框阻止,java,android,dialog,progressdialog,Java,Android,Dialog,Progressdialog,通过删除阻止调用,解决了未显示进度对话框的问题 我的目的是从internet下载大量数据,并让最终用户了解下载状态,但是我必须等待数据完成下载,以便继续下一步,因此我必须阻止代码执行 阻塞会导致进度对话框不显示或冻结。我需要一些技巧,以便以最佳方式执行这些任务。因为我的任务很简单,所以对我来说,实现任务完成侦听器似乎有些过火,我想知道是否有其他方法可以解决我的问题?试试这个:: @Override protected void onPreExecute() { d
@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");
}
您可以使用以下选项:
@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(),以了解它是如何工作的。在这之后,在项目中使用真正的方法、数据等。没有帮助:(使用整个taskremove super.onPreExecute();&super.onPostExecute(result);然后尝试解决问题..调用.get()结果我阻止了主线程继续。我应该实现完整的侦听器还是有更简单的方法阻止代码执行?