2013-06-13 44 views
0

我想获取保存在列表中的值。我正在创建anotepad,并且我希望有人在列表中的主页上打开记事本中的每个保存的列表显示。如何获取sqlite数据库中保存的值在Android中列出?

我已经成功地将值保存在数据库中,但是当我尝试在列表中获取值时,它会在每行中给出像“[email protected]”这样的完整字符串值。

我认为问题出在我的数据库的GetList()方法请查看:

public List<TaskDetailsActivity> GetAddTaskLists() { 
    List<TaskDetailsActivity> TaskLists = new ArrayList<TaskDetailsActivity>(); 

    // Select All Query 
    String selectQuery = "SELECT * FROM " + TABLE_TASKLISTS; 
    SQLiteDatabase db = this.getWritableDatabase(); 
    Cursor cursor = db.rawQuery(selectQuery, null); 

    // looping through all rows and adding to list 
    if (cursor.moveToFirst()) { 
     do { 
      TaskDetailsActivity tasks = new TaskDetailsActivity(); 
      tasks.settaskLists_ID(cursor.getString(0)); 
      tasks.settasklists_Title(cursor.getString(1)); 

      // Adding Doc to list 
      TaskLists.add(tasks); 
     } while (cursor.moveToNext()); 
    } 

    // return Doc list 
    return TaskLists;  
    } 

在这里,我调用数据库的方法是这样的:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    ListView list_tasklistname = (ListView)findViewById(R.id.list_tasklistname); 
    TaskManager_Database db = new TaskManager_Database(getApplicationContext()); 
    list = db.GetAddTaskLists(); 
    ArrayAdapter<TaskDetailsActivity> adapter = new ArrayAdapter<TaskDetailsActivity>(getApplicationContext(), 
                android.R.layout.simple_list_item_1, list); 
    list_tasklistname.setAdapter(adapter); 
    adapter.notifyDataSetChanged(); 

请让我知道什么是错误。由于

+0

你打开/关闭你的数据库 –

+0

@DixitPatel是的,我做了.. – Shweta

回答

0

你越来越对象的对象表示被添加到ListView ...

在你的情况,你应该在cursor.getString(1)的适配器输入返回数据PARAM即String数组......即名单必须是字符串数组或ArrayList的...如果你知道我的意思..

退房这个sample for ref

0

TaskDetailsActivity类应该定义一个toString()方法,返回任何你想要显示该行。

相关问题