gpt4 book ai didi

android - ArrayAdapter/ListView 不工作

转载 作者:行者123 更新时间:2023-11-29 14:08:21 24 4
gpt4 key购买 nike

我是 android 编程的新手,在做我的第一个应用程序时我发现列表有问题。这里的代码:

Cursor c = db.rawQuery("SELECT nombre FROM contactos", null);

ArrayList<String> listaArray = new ArrayList<String>();
ListView listadoContactos = (ListView)findViewById(R.id.listViewListaContactos);

if (c.moveToFirst())
{
do {
listaArray.add(c.getString(0));
} while(c.moveToNext());
}

//Creamos un adaptador y lo asignamos al ListView.
ArrayAdapter<String> adaptadorLista = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listaArray);

listadoContactos.setAdapter(adaptadorLista);

当我看到结果时,我的列表仅显示我正在查询的数据库中的第一项。你能帮帮我吗?

多谢指教!乔治。

PS:“nombre”是第 0 列。这就是我写“getString(0)”的原因,因为我只想显示每一行的 1 列。

最佳答案

尝试使用SimpleCursorAdapter

// NOTE your query result should have id-field, named "_id"
Cursor c = db.rawQuery("SELECT nombre, nombre_id as _id FROM contactos", null);

SimpleCursorAdapter adaptorLista = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, c, new String[]{"nombre"}, new int[]{android.R.id.text1} );
listadoContactos.setAdapter(adaptadorLista);

这里的android.R.layout.simple_list_item_1是ListView中每一行的布局,new String[]{"nombre"} 游标中字段的名称,其值设置为 ListView 行中的 TextView。在最后一个参数 new int[]{android.R.id.text1}

中指定的 TextView id

关于android - ArrayAdapter/ListView 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5331011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com