如何在数据库中显示数据的列表视图?
我已经写了一些这样的东西从数据库中获取数据。如何在数据库中显示数据的列表视图?
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。我想从数据库中获取数据。
在此先感谢。
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));
你忘了返回字符串[]而不是字符串 – Dharmendra 2012-01-03 09:05:53
@Dharmendra编辑答案,thx – Flexo 2012-01-03 09:08:02
它给错误为“变量必须提供任何维度表达式或数组初始值设定项”...错误是在字符串[]结果=新字符串[]; – MADDY 2012-01-03 09:39:26
显示在列表中的数据并不像说getListView().setData(myData);
首先,创建一个列表适配器,这是一类需要一些数据(通常为一个ArrayList)和“给予”其添加到列表一样简单列表可以阅读的方式。
看看开发商文档:http://developer.android.com/reference/android/widget/ListAdapter.html
而且一些教程:
所以如何设置.the链接是有点混乱的数据。可你给任何代码证明它.. – MADDY 2012-01-03 09:35:30
挂上几分钟,我会编辑我的答案 – 2012-01-03 09:45:05
请参阅柔印公司的回答,它现在应该工作! – 2012-01-03 09:56:23
使用simpleadapter – 2012-01-03 08:46:25
http://www.vogella.de/articles/AndroidListView/article.html尝试用这种 – 2012-01-03 08:47:48