Android:IllegalStateException:尝试重新打开已关闭的对象:SQLiteDatabase

Android:IllegalStateException:尝试重新打开已关闭的对象:SQLiteDatabase,android,Android,我在整个活动中都遇到了相同的错误,其中是我的游标代码IllegalStateException:尝试重新打开一个已经关闭的对象:SQLiteDatabase。这是我的密码。我不明白密码哪里出错了。提前谢谢 Cursor cursor = db.rawQuery("select * from ActivityObjectList where activityId " + "= ? ", new String[]{strListItem_ActivityId}); i

我在整个活动中都遇到了相同的错误,其中是我的游标代码IllegalStateException:尝试重新打开一个已经关闭的对象:SQLiteDatabase。这是我的密码。我不明白密码哪里出错了。提前谢谢

Cursor cursor = db.rawQuery("select * from ActivityObjectList where activityId " + "= ? ", new String[]{strListItem_ActivityId});
                imageArray.clear();
                if (cursor.moveToFirst()) {
                    do {
                        String imagePath = cursor.getString(cursor.getColumnIndex("imageaudioPath"));
                        imageArray.add(imagePath);
                    }
                    while (cursor.moveToNext());
                }
                cursor.close();
                db.close();
下面是onCreate()方法中的代码

这是我的日志猫错误

 java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase: /data/data/com.example.tazeen.classnkk/databases/ClassNKK
            at android.database.sqlite.SQLiteClosable.acquireReference(SQLiteClosable.java:55)
            at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1312)
            at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255)
            at com.example.tazeen.classnkk.AllPosts_Page$MyListAdapter.getView(AllPosts_Page.java:1245)
            at android.widget.AbsListView.obtainView(AbsListView.java:2346)
            at android.widget.ListView.makeAndAddView(ListView.java:1864)
            at android.widget.ListView.fillDown(ListView.java:698)
            at android.widget.ListView.fillFromTop(ListView.java:759)
            at android.widget.ListView.layoutChildren(ListView.java:1673)
            at android.widget.AbsListView.onLayout(AbsListView.java:2150)
            at android.view.View.layout(View.java:15595)
            at android.view.ViewGroup.layout(ViewGroup.java:4966)
            at android.support.v4.widget.SwipeRefreshLayout.onLayout(SwipeRefreshLayout.java:562)
Put
dbhelper.onOpen(db);db=dbhelper.getWritableDatabase()这两行。或者,如果它只是一个查询(SELECT)而不是一个命令,您可以使用
dbhelper.onOpen(db);db=dbhelper.getReadableDatabase()-在查询的情况下,数据库不需要可写。
 java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase: /data/data/com.example.tazeen.classnkk/databases/ClassNKK
            at android.database.sqlite.SQLiteClosable.acquireReference(SQLiteClosable.java:55)
            at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1312)
            at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255)
            at com.example.tazeen.classnkk.AllPosts_Page$MyListAdapter.getView(AllPosts_Page.java:1245)
            at android.widget.AbsListView.obtainView(AbsListView.java:2346)
            at android.widget.ListView.makeAndAddView(ListView.java:1864)
            at android.widget.ListView.fillDown(ListView.java:698)
            at android.widget.ListView.fillFromTop(ListView.java:759)
            at android.widget.ListView.layoutChildren(ListView.java:1673)
            at android.widget.AbsListView.onLayout(AbsListView.java:2150)
            at android.view.View.layout(View.java:15595)
            at android.view.ViewGroup.layout(ViewGroup.java:4966)
            at android.support.v4.widget.SwipeRefreshLayout.onLayout(SwipeRefreshLayout.java:562)