主活动中未显示插入来自不同活动的行

时间:2013-08-24 17:29:56

标签: android

我有一个数据库助手类,它从SQLite数据库中获取表的所有行。在我的主要活动的onCreate中,我正在调用该方法并使用该数据填充ListView。

我有一个单独的Activity,它从网络获取信息并将行插入数据库。完成后我调用finish()并返回主活动。

当它返回时,ListView中没有显示插入的行。从调试开始,它们似乎没有从数据库助手方法返回。

如果我关闭并重新启动应用,行会显示出来。如果我更改了屏幕方向,它们会显示出来。

这是我的数据库帮助方法:

public List<Object> getAllObjects() {

        List<Object> objects = new ArrayList<Object>();

        Cursor cursor = database.query(SQLiteHelper.TABLE_OBJECT,
                allColumns, null, null, null, null, null);

        cursor.moveToFirst();
        while (!cursor.isAfterLast()) {
            Object object = cursorToObject(cursor);
            objects.add(object);
            cursor.moveToNext();
        }

        cursor.close();
        return objects;
}

1 个答案:

答案 0 :(得分:0)

您的主Activity 是新创建的,您将返回旧实例。在您的情况下,请将更新代码放在主Activity的{​​{3}}方法中,而不是onCreate方法。

有关何时执行代码的详细信息,请参阅onResume