0

我從數據庫中獲取一些數據並嘗試將它們填充到列表視圖中。 我已經通過cursor.count()有數據存在,但列表視圖顯示任何檢查:/如何使用SimpleCursorAdapter從數據庫填充列表視圖

我使用simpleCursorAdapter:

rubDb.open(); 
    cur = rubDb.getRubParent();  
    startManagingCursor(cur); 
    Log.d("cursor length",Integer.toString(cur.getCount())); 
    String[] from = new String[] { RubriqueDbAdapter.RUB_NOM, RubriqueDbAdapter.RUB_VISUEL };  
    int[] to = new int[] {R.id.title, R.id.icon}; 
    listAdapter = new SimpleCursorAdapter(this, R.layout.itemgauche, cur, from, to); 
    listeGauche.setAdapter(listAdapter); 


public Cursor getRubParent() {    
    Cursor cursorResults = mDb.rawQuery("SELECT * FROM " + TABLE_RUBRIQUE + " WHERE rub_id_parent = 0 ORDER BY rub_ordre ASC", null);  
    return cursorResults; 
} 

我怎麼可以從SD卡的圖片,並把它放在在ListView中的ImageView?

感謝您的幫助!

+0

從適配器類發佈getView()方法。 – FoamyGuy 2012-03-13 16:09:59

+0

我沒有重寫getView():s – Remy 2012-03-13 16:17:06

+0

好的,我做了一個自定義ListAdapter,它擴展了ArrayAdapter,這裏是getView()方法,但現在如何使用正確的標題提取從數據庫中設置文本? tx – Remy 2012-03-13 16:37:04

回答

1

首先,你應該使用一個CursorAdapter,也許是SimpleCursorAdapter,而不是手動複製所有數據到對象的數組,只需使用ArrayAdapter

其次,如果你的名單將是任何不是一個簡單的文本塊等,你必須適配器如何做你想要的任何東西。使用SimpleCursorAdapter,您可以將ViewBinder與其關聯,或將子類別SimpleCursorAdapter關聯並覆蓋setViewImage()或子類SimpleCursorAdapter並覆蓋bindView()

+0

好吧......聽起來有點難...... – Remy 2012-03-13 16:47:19

+0

@Remy:它可能比你已經寫的代碼少。 – CommonsWare 2012-03-13 16:51:49

+0

我要試試這個......謝謝 – Remy 2012-03-13 16:58:00