这里我使用AsyncTask来处理数据库,由于我的Cursor.requery需求,我正在向Async发送一个ContentValue,如下所示:
public void todisplay(String username,String realname,String image1,String
image2,String email){
ContentValues cv = new ContentValues(5);
cv.put(MyDbHelperContacts.COL_USERNAME, username);
cv.put(MyDbHelperContacts.COL_REALNAME, realname);
cv.put(MyDbHelperContacts.COL_IMAGE1, image1);
cv.put(MyDbHelperContacts.COL_IMAGE2, image2);
cv.put(MyDbHelperContacts.COL_EMAIL, email);
AsyncAdd async = new AsyncAdd();
async.execute(cv);
public class AsyncAdd extends AsyncTask<ContentValues, String ,String>{
@Override
protected String doInBackground(ContentValues... params) {
mDb.insert(MyDbHelperContacts.TABLE_NAME, null, params);
mCursor.requery();
return null;
}
@Override
protected void onPostExecute(String result) {
mAdapter.notifyDataSetChanged();
super.onPostExecute(result);
}
但是(ContentValues ... params)正在将我的ContentValues转换为ContentValues [],插入不接受,你们可以给我一个提示如何从ContentValues []转换回ContentValues?非常感谢
答案 0 :(得分:0)
如果您只有一个项目,则可以执行此操作:
mDb.insert(MyDbHelperContacts.TABLE_NAME, null, params[0]);