下面是我在DBAdapter获取id的函数,我想获取所有的ID,然后显示在toast信息的list中。不知道哪里出错了。
public Cursor fetchAllIDs() {
return mDb.query(DATABASE_TABLE0, new String[] {IDno1}, null, null, null, null, null);
}
在按钮点击事件上调用的下面的函数,我想让 toast 里填充满所有的ID.
private void fillData() {
// 从数据库中获取所有的ID
Cursor c = DBHelper.fetchAllIDs();
startManagingCursor(c);
String[] from = new String[] {DBAdapter.IDno1 };
Toast.makeText(getApplicationContext(), ""+from, Toast.LENGTH_LONG).show();
}
ChatGPT尝试为您解答,仅供参考
首先,您可以将数据库中查询的结果打印到日志中,以确定查询是否返回期望的结果。您也可以使用moveToFirst方法来确定查询是否返回数据。
您可以使用以下代码来获取ID列表:
List<String> idList = new ArrayList<>();
while (c.moveToNext()) {
idList.add(c.getString(c.getColumnIndex(DBAdapter.IDno1)));
}
然后,您可以使用以下代码在Toast中显示ID列表:
Toast.makeText(getApplicationContext(), idList.toString(), Toast.LENGTH_LONG).show();
请注意,这将在Toast中显示列表的字符串表示形式,例如"[ID1, ID2, ID3]"。如果您希望在Toast中显示每个ID,则可以使用以下代码:
for (String id : idList) {
Toast.makeText(getApplicationContext(), id, Toast.LENGTH_LONG).show();
}
这将在Toast中依次显示每个ID。