我想使用游标在Listview中显示列值和列值。 我目前的代码只显示列值。
public void openAndQueryDatabase() {
db = openOrCreateDatabase( "mydatabase.db", SQLiteDatabase.CREATE_IF_NECESSARY , null );
Cursor cursor = db.rawQuery("select * from "+ table + " where name='"+ name + "'", null);
int count = cursor.getColumnCount();
if (cursor!=null )
{
if (cursor.moveToFirst())
{
do
{
for (int i =0 ; i< count; i++)
{
String data = cursor.getString(i);
details.add(data);
}
}
while (cursor.moveToNext());
}
}
}
答案 0 :(得分:2)
使用getColumnName(int columnIndex)
获取给定索引的行名称。
答案 1 :(得分:2)
在这种情况下,您应该使用hashmap
for (int i =0 ; i< count; i++)
{
String data = cursor.getString(i);
String column_name = cursor.getColumnName(i);
HashMap<String,String> map = new HashMap<String,String>();
map.put("column_value",data);
map.put("column_name",column_name);
details.add(map); //change the type of details from ArrayList<String> to arrayList<HashMap<String,String>>
}
答案 2 :(得分:0)
使用此功能。
for (int i =0 ; i< count; i++)
{
String data = cursor.getString(i);
String column_name = cursor.getColumName(i);
details.add(data);
}
答案 3 :(得分:0)
只需使用以下名称检索String
数组:
cursor.getColumnNames()