我是android的新手。构建一个需要在后台完成任务的应用程序。以下是代码片段。
public class YQL extends AsyncTask <List,Void,List>
{ @Override
protected List doInBackground(List... Suggestions) {
//doing some stuff using Suggestions[0]
}
}
我有一个List类的对象,即mySuggestions,我需要将其传递给异步任务。但由于异步任务只将数组作为输入,我尝试了以下内容。
YQL yqlMain = new YQL();
List[] temp = null;
temp[0] = mySuggestions
yqlMain.execute(temp);
没用。 错误:空指针访问:变量temp只能为null。 有什么建议?
答案 0 :(得分:0)
你做错了..做点什么
List temp = new ArrayList();
temp.add(mySuggestions);
yqlMain.execute(temp);
答案 1 :(得分:0)
temp
为null,但您正在调用其中的操作。这给出了NullPointerException
。
以下代码应该执行操作(未经测试)
public class YQL extends AsyncTask <String,Void,List>
{
@Override
protected List doInBackground(String... Suggestions) {
}
}
执行:
YQL ygl = new YQL();
ygl.Execute("Suggestion 1", "Suggestion 2")
答案 2 :(得分:0)
new DownloadFilesTask().execute(url1, url2, url3);
然后
private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
..
..
}
检查此链接: AsyncTask