【发布时间】:2011-04-14 12:46:12
【问题描述】:
我想知道它是如何工作的。我已经阅读了几次文档,但不明白。
我注意到在某些情况下onPostExecute 什么都不做。
谁能给我解释一下?
【问题讨论】:
标签: android android-asynctask extends
我想知道它是如何工作的。我已经阅读了几次文档,但不明白。
我注意到在某些情况下onPostExecute 什么都不做。
谁能给我解释一下?
【问题讨论】:
标签: android android-asynctask extends
<Void, Void, Long> 部分在 Java 中称为 Generics。它用于那些原始编码人员希望使用它的类,无论“最终用户”选择什么类型。
当您想要启动/停止进度对话框时,通常使用onPre/PostExecute()。
如果您想在没有进度对话框的情况下在进度期间更新 UI,您可以在 onProgressUpdate() 中执行操作(即:您正在从网络加载图像并在加载时显示它们)
如果您有一个带有进度条的对话框,您必须使用所有这些来更新进度条。
【讨论】:
doInBackground() 返回的内容作为参数。最后一个Void 表示您没有返回值(这是合法的),因此onPostExecute() 将不接受任何参数。不过,您仍然可以在那里停止一个不确定的进度对话框。
This 帖子用图表很好地解释了 AsyncTask 概念!
【讨论】:
{onPostExecute()}用于在完成后台任务{(doInBackground())}之后想做某事。
例如,
start Progress Bar @ {onPreExecute()}
running Progress Bar @ {doInBackground()}
stop Progress Bar @ {onPostExecute()}
【讨论】: