2011-05-05 94 views
1

嗨我可以使用SimpleCursorAdapter綁定值到列表適配器。遊標正在從SQLLite數據庫中調用。然而,不管遊標中的結果如何(它總是至少有一行),列表視圖顯示空的消息。我對Android非常新,並感謝任何幫助。Android SimpleCursorAdapter + ListView不工作

我的代碼在下面給出:

在活動:通過的onCreate()調用

private void setupList() { 
    if(sesionDao == null) { 
     sesionDao = new SessionDAO(this); 
    } 
    Cursor cursor = sesionDao.retrieveAllSessions(); 
    startManagingCursor(cursor); 

    String[] from = new String[]{Database.SES_SESSION_NAME}; 
    int[] to = new int[]{R.id.sessionNameRow}; 
    SimpleCursorAdapter sessionAdapter = new SimpleCursorAdapter(this, R.layout.session_list_row,cursor, from, to); 

    setListAdapter(sessionAdapter); 
} 

檢索光標

db = dbHelper.getReadableDatabase(); 

Cursor c = db.query(Database.SESSIONS_TABLE_NAME, new String[] { 
    Database.ID_COLUMN, Database.SES_SESSION_NAME }, null, 
       null, null, null,null); 

session_list_row.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:text="" android:id="@+id/sessionNameRow" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> </LinearLayout>

主要佈局 <ListView android:id="@android:id/list" android:layout_height="fill_parent" android:layout_width="fill_parent"></ListView> <TextView android:id="@android:id/empty" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_sessions_msg" />

回答

2

我想通了這個問題。在這個方法結束之後,當光標變得無效時,我正在做關閉連接的愚蠢錯誤。

相關問題