gpt4 book ai didi

android - 如何将不同的对象作为参数传递给 AsyncTask?

转载 作者:IT王子 更新时间:2023-10-28 23:29:38 25 4
gpt4 key购买 nike

我正在使用以下代码来创建 AsyncTask

public  class SaveFileToExternalStorage extends AsyncTask<File, Void, Boolean>{

protected Boolean doInBackground(File... file) {

DalCategories c= new DalCategories();
boolean result = c.saveObject(customlistobject,file[0]);

return result;
}


protected void onProgressUpdate() {
//setProgressPercent(progress[0]);

}

protected void onPostExecute(boolean result) {
//showDialog("Downloaded " + result + " bytes");

}

}

现在我想向它传递两个参数 customlistobjectFile 具有 void 进度和 boolean 返回类型的对象。

我不知道如何将该 customlistobjectFile 对象一起传递给我的 AsyncTask

最佳答案

一个不完美但可行的解决方案是使用 Object 作为参数。

public  class SaveFileToExternalStorage extends AsyncTask<Object, Void, Boolean>{
protected Boolean doInBackground(Object... param) {
File file = (File) param[0];
List list = (CustomList) param[1];
return result;
}

protected void onProgressUpdate()
{
//setProgressPercent(progress[0]);
}

protected void onPostExecute(boolean result)
{
//showDialog("Downloaded " + result + " bytes");
}
}

此代码只是一个示例,您应该使用 instanceof 确保索引 0 和 1 处的对象确实是 File 或您的 CustomList。

Octavian Damiean 也写了一个很好的方法……

关于android - 如何将不同的对象作为参数传递给 AsyncTask?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4885350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com