2012-01-03 316 views
1

我已經寫了一些這樣的東西從數據庫中獲取數據。如何在數據庫中顯示數據的列表視圖?

public String getData() { 
    // TODO Auto-generated method stub 
    String[] columns = new String[]{ KEY_ROWID, KEY_NAME, KEY_SCORE}; 
    Cursor c = ourDatabase.query(
       DATABASE_TABLE, columns, null, null, null, null, null); 
    String result = ""; 

    int iRow = c.getColumnIndex(KEY_ROWID); 
    int iName = c.getColumnIndex(KEY_NAME); 
    int iHotness = c.getColumnIndex(KEY_SCORE); 

    for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){ 
     result = result + c.getString(iRow) + " " + c.getString(iName) + " " + c.getString(iHotness) + "\n"; 
    } 

    return result; 
} 

我能夠在textview中顯示數據。但我想顯示數據到列表視圖任何人都可以建議我或給我一個示例代碼來顯示數據到列表視圖。我已經採取了一個list.xml並在其中放置了一個listview。我想從數據庫中獲取數據。

在此先感謝。

+0

使用simpleadapter – 2012-01-03 08:46:25

+0

http://www.vogella.de/articles/AndroidListView/article.html嘗試用這種 – 2012-01-03 08:47:48

回答

1
public String[] getData() { 
    // TODO Auto-generated method stub 
    String[] columns = new String[]{ KEY_ROWID, KEY_NAME, KEY_SCORE}; 
    Cursor c = ourDatabase.query(DATABASE_TABLE, columns, null, null, null, null, null); 
    //Initialise the result variable 
    String[] result = new String[c.getCount()]; 

    int iRow = c.getColumnIndex(KEY_ROWID); 
    int iName = c.getColumnIndex(KEY_NAME); 
    int iHotness = c.getColumnIndex(KEY_SCORE); 
    int counter = 0; 
    for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){ 
     result[counter] = c.getString(iRow) + " " + c.getString(iName) + " " + c.getString(iHotness) + "\n"; 
     counter++; 
    } 

    return result; 
} 

然後在ListView onCreate中將結果字符串添加到適配器。

setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, result)); 
+1

你忘了返回字符串[]而不是字符串 – Dharmendra 2012-01-03 09:05:53

+0

@Dharmendra編輯答案,thx – Flexo 2012-01-03 09:08:02

+0

它給錯誤爲「變量必須提供任何維度表達式或數組初始值設定項」...錯誤是在字符串[]結果=新字符串[]; – MADDY 2012-01-03 09:39:26

1

顯示在列表中的數據並不像說getListView().setData(myData);

首先,創建一個列表適配器,這是一類需要一些數據(通常爲一個ArrayList)和「給予」其添加到列表一樣簡單列表可以閱讀的方式。

看看開發商文檔:http://developer.android.com/reference/android/widget/ListAdapter.html

而且一些教程:

+0

所以如何設置.the鏈接是有點混亂的數據。可你給任何代碼證明它.. – MADDY 2012-01-03 09:35:30

+0

掛上幾分鐘,我會編輯我的答案 – 2012-01-03 09:45:05

+0

請參閱柔印公司的回答,它現在應該工作! – 2012-01-03 09:56:23

相關問題