android - 我可以将不同类型的参数传递给 Android 中的 AsyncTask 吗?

标签 android multithreading android-asynctask

我想实现一个通用的线程保存类,它采用 ImageView 的 RessourceId 和存储所需图像文件的 Url (http)。它将下载图像并填充 UiThread 中 ImageView 的 src。

我以为 AsyncTask对我来说是最好的。但是我注意到我只能将一种类型的参数传递给 doInBackground() 方法。就像一个 URL 数组。真的吗?你会建议我什么?

最佳答案

您可以将参数作为对象传递

new MyTask().execute(url, str, context);

public class MyTask extends AsyncTask<Object, Void, Void> {
    @Override
    protected Void doInBackground(Object... params) {
            Url url = (Url) params[0];
            String str = (String) params[1];
            Context ctx = (Context) params[2];

            return null;
    }
}

关于android - 我可以将不同类型的参数传递给 Android 中的 AsyncTask 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3921816/

相关文章:

java - C/C++ "system level programmers"的线程问题是否与 Java 程序员面临的问题有很大不同?

java - 在同一实例上使用同步方法锁定

android - 在 recyclerview fragment Reandroid 中屏幕旋转后不显示进度条

android - VideoView 不适用于 LG Android 手机上的旋转视频

android - 找不到 'com.android.support:design:22.2.0'

安卓 Q : background activity starts

java - 何时线程。何时不使用线程

android - 迭代kotlin时从列表中删除数据

c++ - Thread std::invoke unknown type and failed to specialize function 错误

android - 对需要响应才能继续的 api 调用使用 Asynctasks 有什么意义吗?