2013-06-13 45 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()方法,返回任何你想要顯示該行。

相關問題