Android - 加载图像的异步任务

时间:2011-10-19 02:42:45

标签: android android-asynctask

我正在尝试编写AsyncTask,其中ImageView路径指向图像作为输入,并将图像加载到后台线程中。我想知道如何通过ImageViewAsyncTask的路径? Params中的doInBackground参数可以包含属于同一类的array个数据,但这是一个不同的方案,因为其中一个是View而另一个是文件的路径(String)。

我拥有的一个选项是将AsyncTask作为内部类,并将ImageView声明为可在AsyncTask内访问的类变量。我不想这样做,因为多个类使用相同的任务,并且它不符合DRY策略。

感谢任何帮助。

感谢。

3 个答案:

答案 0 :(得分:1)

在问Android : Loading an image from the Web with Asynctask中提出同样类型的问题,并查看Trying to use AsyncTask do download some image files尝试,如果您发现问题,请告诉我。

答案 1 :(得分:1)

您可以使用ImageView的setTag方法,并为其指定图像的路径。 然后你的asynctask或后台线程可以获取你的imageView并用它做你想做的任何事情。

答案 2 :(得分:1)

您可以将任务的参数声明为一对ImageView和一个字符串。

private class DownloadFilesTask extends AsyncTask< Pair<ImageView, String> >, Integer, Long> {

}