Vam*_*lla 4 android android-asynctask
这是我第一次使用AsyncTask,也可能有点混淆,关于传递值.
我有4 ArrayList<String>秒,其中包含应插入数据库的数据.我希望这个插入在后台完成.通过从我拥有的4个arraylists中传递值,将至少有50行插入到数据库中,并且一次插入1行.
有人可以指导我如何做到这一点?
现在我创建一个子类InsertData,它扩展了AsyncTask :::
private class InsertData extends AsyncTask<Params, Progress, Result>{
@Override
protected Result doInBackground(Params... params) {
// TODO Auto-generated method stub
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我有4个arraylists中的值,我需要从每个arraylist中检索1个条目并将4个值传递给数据库.我如何将这4个值传递给AsyncTask,以及如何重复此操作直到arraylists中有条目.
这是将1行插入数据库的数据库方法:::
public void insert_row(int count, String image_url, String name, String number) {
// TODO Auto-generated method stub
db.execSQL("INSERT INTO contacts VALUES('"+ count +"', '"+ image_url +"', '"+ name +"', '"+ number +"')");
}
Run Code Online (Sandbox Code Playgroud)
如果有人能给我一个如何实现这个的概述,那就太好了.
尝试以下操作,无论如何,您可以InsertData使用您需要的参数创建构造函数,将它们存储在InsertData类字段中并使用doInBackground().
private class InsertData extends AsyncTask<ArrayList, Progress, Result>{
@Override
protected Result doInBackground(ArrayList... params) {
// TODO Auto-generated method stub
ArrayList list1 = params[0];
ArrayList list2 = params[1];
...
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
呼叫:
InsertData task = new InsertData();
task.execute(yourList1, yourList2, yourList3...);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12382 次 |
| 最近记录: |