3

たとえば、次のコードがあるとします。

Cursor myCursor = context.getContentResolver()
    .query(MediaStore.CONTENT_URI, null, null, null, null);`

「myCursor」を閉じる必要がありますか?

ありがとう。

4

1 に答える 1

2

メモリリークを避けるために、カーソルは常に何らかの方法で閉じる必要があります。ただし、実装している場合はLoaderManager.LoaderCallbacks<Cursor>、次のメソッドをオーバーライドするとカーソルが閉じられます。

@Override
public void onLoaderReset(Loader<Cursor> arg0) {
    cursorAdapter.swapCursor(null);
}
于 2014-09-03T05:36:45.993 に答える