gpt4 book ai didi

android - 列表不完美地从数据库播种数据

转载 作者:行者123 更新时间:2023-11-29 21:48:54 25 4
gpt4 key购买 nike

我是安卓新手。我想将插入的数据从数据库显示到表中。我已经使用 List 来获取数据。

 public List<user> getAllUsers() {
List<user> users = new ArrayList<user>();

Cursor cursor = database.query(SqlLiteHelper.TABLE_USER, allColumns, null, null, null, null, null);

cursor.moveToFirst();
while (!cursor.isAfterLast()) {
user varUser = cursorToUser(cursor);

//Log.v("user name",varUser.getName().toString());

users.add(varUser);
cursor.moveToNext();
}
//Log.v("user name",users.get(0).getName().toString());

cursor.close();
return users;
}



private user cursorToUser(Cursor cursor) {
user varUser = new user();

//Log.v("user id", cursor.getString(1).toString());

varUser.setID(cursor.getLong(0));
varUser.setName(cursor.getString(1));
varUser.setPhone(cursor.getString(2));
varUser.setEmail(cursor.getString(3));
return varUser;
}

我在 UserDataSource.java 上写了这段代码

然后在我需要显示这些数据的地方使用以下代码

       databaseSource = new UserDataSource(this);
databaseSource.open();

List<user> values = databaseSource.getAllUsers();
Log.v("information", values.get(0).getName().toString());
ArrayAdapter<user> adapter = new ArrayAdapter<user>(this, android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);

这不是在列表中添加值。我使用 log.v 检查数据是否返回。而且我发现数据完全来自数据库。只有当我尝试打印列表或将其插入到 simple_list_item_1 时,它才会出现问题。

正在打印

com.example.given_n_take.user@41221338

但是它应该从数据库中打印名字。

数据库表名为user。

请让我知道我错过了什么。

这是我的 xml 布局文件,我试图在其中添加这些列表

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >


<Button
android:id="@+id/all_user_back"
style="?android:attr/buttonStyleSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:text="Back" />



<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="384dp" >
</ListView>




</LinearLayout>

最佳答案

如果您的列表显示 com.example.given_n_take.user@41221338 这意味着您在 user 类中缺少 toString 方法.实现返回用户名称的 toString

关于android - 列表不完美地从数据库播种数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14975059/

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