我正在尝试编写AsyncTask
,其中ImageView
和路径指向图像作为输入,并将图像加载到后台线程中。我想知道如何通过ImageView
和AsyncTask
的路径? Params
中的doInBackground
参数可以包含属于同一类的array
个数据,但这是一个不同的方案,因为其中一个是View
而另一个是文件的路径(String
)。
我拥有的一个选项是将AsyncTask
作为内部类,并将ImageView
声明为可在AsyncTask
内访问的类变量。我不想这样做,因为多个类使用相同的任务,并且它不符合DRY策略。
感谢任何帮助。
感谢。
答案 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> {
}