【问题标题】:android cardview only show the last result the right amount of timesandroid cardview 只显示最后一个结果正确的次数
【发布时间】:2016-02-25 13:20:27
【问题描述】:

我是 android 和 java 的新手。 我做了一个卡片视图并用一个简单的循环填充它:

private ArrayList<DataObject> getTheData(){
    ArrayList res = new ArrayList<DataObject>();

    for (int index = 0; index < 5; index++){
        DataObject obj = new DataObject("shit","happen");
        res.add(index,obj);
    }
    return res;
}

成功了。现在我创建了一个数据库并想用这些数据填充它。所以我有这个:

    public ArrayList<DataObject> getData() {
    SQLiteDatabase db = this.getReadableDatabase();
    ArrayList res = null;
    try {
        res = new ArrayList<DataObject>();
        String selectQuery = "SELECT * FROM quotes a LEFT JOIN authors b ON b.author_id=a.quote_author";

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

        if (cursor != null) {
            if (cursor.moveToFirst()) {
                do {

                    Log.d("CHECKDB",cursor.getString(cursor.getColumnIndex("first_name")) + " " + cursor.getString(cursor.getColumnIndex("last_name")));
                    Log.d("CHECKDB2",cursor.getString(cursor.getColumnIndex("quote_text")));
                    DataObject obj = new DataObject(
                            cursor.getString(cursor.getColumnIndex("first_name")) + " " + cursor.getString(cursor.getColumnIndex("last_name")),
                            cursor.getString(cursor.getColumnIndex("quote_text"))
                    );
                    res.add(obj);

                } while (cursor.moveToNext());

            }

        }
    } catch (SQLiteException se) {
        Log.e(getClass().getSimpleName(), "Could not create or Open the database");
    } finally {
        if (db != null)
            db.close();
    }


    return res;
}

日志显示所有结果,但是当我运行应用程序时,我得到了正确次数的最后一个结果。在这种情况下,我的数据库中有 4 个引号,所以我看到 4 个但最后一个 4 次。

拜托,因为我是新手,所以我们将不胜感激。

【问题讨论】:

    标签: android-cardview android-database


    【解决方案1】:

    问题是我的数据对象属性设置为静态

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-25
      • 2015-10-08
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      相关资源
      最近更新 更多