我无法从我的SQLite数据库中获取ArrayList以在textview中显示。我们的想法是将其设为“历史”页面,以便用户可以查看过去的条目。当我tv.setText(db.getAllBalance)
时,我得到的只是一个崩溃,logcat显示我的项目包名称,然后反复出现像@ 4f58a392这样的东西。这是我完成我的应用程序的最后一步,它正在挣扎。任何帮助将不胜感激。
我的数据库:
//Getting All Balance
public List<Balance> getAllBalance(){
List<Balance> balanceList = new ArrayList<Balance>();
// Select All Query
String selectQuery = "SELECT * FROM " + TABLE_BALANCE;
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
Balance balance = new Balance();
balance.setID(Integer.parseInt(cursor.getString(0)));
balance.setAmount(cursor.getFloat(1));
// Adding balance to list
balanceList.add(balance);
} while (cursor.moveToNext());
}
// return contact list
return balanceList;
}
我的历史课:
public class History extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.history);
final DatabaseHandler db = new DatabaseHandler(this);
TextView tv = (TextView) findViewById(R.id.tvSQLinfo);
Log.d("testing", "reading wallet " + db.getAllBalance());
tv.setText((CharSequence) db.getAllBalance());
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
AdView adview = (AdView) findViewById(R.id.adView);
AdRequest re = new AdRequest();
//re.setTesting(true);
adview.loadAd(re);
}
}
我发布“糟糕的问题”的历史很糟糕。但我保证,我搜索并搜索过,但是找不到解决办法。
答案 0 :(得分:0)
您将在List
中返回getAllBalance()
,然后将其投射到CharSequence
。您可以尝试在toString()
之后进行getAllBalance()
调用,以尝试获取对象的某些String
表示。将演员表移至CharSequence
; toString()
如果使用`toString()'