2016-02-10 28 views
0

正尝试基于用户ID,但其diplaying最后更新的记录不仅不能显示基于ID全程记录我如何才能做到这一点在这里让我后我的代码,以显示记录:通过id检索记录不起作用?

这里是代码,我检索基于ID的记录:

public List<Model_Task_List> getTaskListById(String id) { 
     SQLiteDatabase db = this.getReadableDatabase(); 
     Model_Task_List model_task_list=new Model_Task_List(); 
     String selectQuery = " SELECT " + 
       Model_Task_List.KEY_id + "," + 
       Model_Task_List.KEY_username + "," + 
       Model_Task_List.KEY_subject + "," + 
       Model_Task_List.KEY_task + "," + 
       Model_Task_List.KEY_taskid +"," + 
       Model_Task_List.KEY_owner+ 
       " FROM " + Model_Task_List.KEY_table + " WHERE " + Model_Task_List.KEY_owner + "= " + id + ""; 
     List<Model_Task_List>listobj=new ArrayList<Model_Task_List>(); 
     Model_Task_List modelobj=new Model_Task_List(); 
     Cursor cursor = db.rawQuery(selectQuery, null); 

     if (cursor.moveToFirst()) { 
      do { 
       modelobj.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_id)))); 
       modelobj.setUserName(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_username))); 
       modelobj.setSubject(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_subject))); 
       modelobj.setTaskStatus(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_task))); 
       modelobj.setTaskID(cursor.getShort(cursor.getColumnIndex(Model_Task_List.KEY_taskid))); 
       modelobj.setUserid(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_owner))); 
       listobj.add(modelobj); 
      }while (cursor.moveToNext()); 
     } 

     return listobj; 

    } 

这里是我设置适配器代码:

model_task_lists=database_sf_app.getTaskListById(user_id) 
taskadapter=new Task_List_Adapter(model_task_lists,getActivity()); recyclerView.setAdapter(taskadapter); 

我该如何解决这问题是否正在做它正确的方式

+0

如果你的id是字符串格式,你需要用引号连接它。 –

回答

2

只有您的模型类的问题,您只创建一次模型类对象。 如果您检索所有数据库记录,则每次提取记录时都要创建一个新对象。

if (cursor.moveToFirst()) { 
     do { 
modelobj=new Model_Task_List();   modelobj.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_id)))); 
      modelobj.setUserName(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_username))); 
      modelobj.setSubject(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_subject))); 
      modelobj.setTaskStatus(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_task))); 
      modelobj.setTaskID(cursor.getShort(cursor.getColumnIndex(Model_Task_List.KEY_taskid))); 
      modelobj.setUserid(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_owner))); 
      listobj.add(modelobj); 
     }while (cursor.moveToNext()); 
    } 
+0

谢谢我节省了很多时间 – Yog