新的AsyncTask <object,object,=“”object =“”>,它在哪里?</objects,>

时间:2013-01-27 18:13:50

标签: android android-asynctask

关于AsyncTask<ObjectA, ObjectB, ObjectC>参数,我总是对哪个Object影响什么感到困惑。

一个影响我的doInBackGround返回类型,一个影响我的doInBackGround输入类型,另一个影响其他影响。

当我改变我想发送的东西并返回时,这会让人非常困惑。

ObjectA影响

ObjectB影响

ObjectC影响

(忽略可能滥用效果/影响)

2 个答案:

答案 0 :(得分:1)

来自documentation

ObjectA - doInBackground();

ObjectB - progress indicator: publishProgress(), etc

ObjectC - onPostExecute(), what doInBackground() must return

实际引用:

  

AsyncTask的泛型类型

     
     

异步任务使用的三种类型如下:

     

1.Params,执行时发送给任务的参数类型。

     

2.Progress,后台计算期间发布的进度单位的类型。

     

3.Result,背景计算结果的类型。

     

并非所有类型都始终由异步任务使用。标记类型   如果未使用,只需使用类型Void

private class MyTask extends AsyncTask<Params, Progress, Result> { ... }

答案 1 :(得分:0)

在提出此类问题之前,请先阅读文档:http://developer.android.com/reference/android/os/AsyncTask.html

它说:

  

异步任务使用的三种类型如下:

     
      
  1. Params,执行时发送给任务的参数类型。
  2.   
  3. 进度,后台计算期间发布的进度单位的类型。
  4.   
  5. 结果,背景计算结果的类型。
  6.         

    并非所有类型都始终由异步任务使用。标记类型   如果未使用,只需使用类型Void。