0

私はAndroidを初めて使用します。カーソルオブジェクトとデータベースが閉じているかどうかを確認するために使用できるステートメントはありますか。2つのアクティビティAとBがあります。Aで特定のアクションを実行すると、Bに移動します。アクティビティAでAのデータベースオブジェクトとカーソルオブジェクトが閉じます。Bにいるときに戻るボタンを押すと、アクティビティ強制的に閉じられます。このエラーはカーソルオブジェクトを閉じたことが原因であると理解しています。カーソルとデータベースオブジェクトを再度開く方法はありますか、または両方が閉じているかどうかを確認できますか?そうであれば、助けてください。

私のlogcatビューは以下にあります:

10-25 16:02:15.152: ERROR/AndroidRuntime(458): Caused by:java.lang.IllegalStateException: attempt to re-open an already-closed object: android.database.sqlite.SQLiteQuery (mSql = SELECT * FROM tbl_sec) 
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteClosable.acquireReference(SQLiteClosable.java:34)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:64)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:283)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteCursor.onMove(SQLiteCursor.java:255)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:188)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:248)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at com.nagainfo.firstAp.showTime.onResume(showTime.java:84)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1149)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.Activity.performResume(Activity.java:3823)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3118)
4

2 に答える 2

1

CursorアクティビティAonResume()またはのonStart()代わりにを開いてみてくださいonCreate()

于 2012-10-25T11:06:52.187 に答える
0

データベースインスタンスを閉じるには、アクティビティを終了する前に次のようにします。

if(db.isOpen()){
    db.close();
}

カーソルが使用可能かどうかを確認するには、次のようにします。

if (cursor1.isClosed())
    //Do something here
于 2012-10-25T11:06:56.177 に答える