gpt4 book ai didi

java - 如何将单个 SQLite 数据显示到 TextView 中?

转载 作者:搜寻专家 更新时间:2023-11-01 09:20:58 25 4
gpt4 key购买 nike

我想从现有数据库中检索金额并将其显示在 TextView 中。

我已经创建了数据库。但是,当我尝试获取并显示金额时,我的应用程序一直崩溃。

/DataBaseHelper.java/

   public Cursor getBalance(String amount) {
SQLiteDatabase db = this.getReadableDatabase();

String selectQuery = "SELECT * FROM " + TABLE_USER_BALANCE + " WHERE "
+ KEY_AMOUTNT + " = " + amount;

Log.e(LOG, selectQuery);

Cursor c = db.rawQuery(selectQuery, null);

if (c != null)
c.moveToFirst();

Balance b = new Balance();
b.setAmount(c.getInt(c.getColumnIndex(KEY_AMOUTNT)));

return (Cursor) b;
}

仪表板类:

public void saveCallBack(Balance balance) {


DataBaseHelper dataBaseHelper = new DataBaseHelper(context);
Cursor cursor = dataBaseHelper.getBalance(DashBoard.email);
while (cursor.moveToNext()) {
String s_amount = "";
s_amount =
cursor.getString(cursor.getColumnIndex(DataBaseHelper.KEY_AMOUTNT));

Double amount = 0.0;
if (AppUtility.isNum(s_amount)) {
amount = Double.parseDouble(s_amount);
}

TextView Amount = findViewById(R.id.amount);
Amount.setText(String.valueOf(amount));


}

}

最佳答案

您正在将 Balance 转换为 Cursor,这是不可能的,因此您的应用会崩溃。您想要返回数据库 Cursor 本身或 Balance 对象。您已经制作了 Balance 实例并在其中放置了一些值,所以我假设您的代码应该是这样的:

public Balance getBalance(String amount) {
...

Balance b = new Balance();
b.setAmount(c.getInt(c.getColumnIndex(KEY_AMOUTNT)));
return b;
}

我建议您多了解一下 Java 中的转换,这样您就会了解转换行为。

关于java - 如何将单个 SQLite 数据显示到 TextView 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55511966/

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