1

Ich sehe ähnliche Fragen hier, aber meine ist anders. Ich habe eine Aktivität mit einem Cursor LoaderManager. Ich benutze eine switch-Anweisung in onCreateLoader und onLoadFinished, da es sich um drei verschiedene CursorLoader handelt. So weit, ist es gut. Das Problem ist, dass bei der Änderung der Ausrichtung die Lader ihre Daten erneut anfordern. Ich verwende MinSdkVersion 11 und Support-Bibliothek. Wie verhindere ich, dass das Requerying stattfindet? (Ich habe kein Internet, also benutze das Handy zum Posten. Also kein Code, aber Erklärung sollte denen klar sein, die Lader verstehen)Cursor Loader wird bei Orientierungsänderung neu geladen

Antwort

0

Wenn Sie Ihren initLoader in eine der Aktivitäts-/Fragment-Erstellungsmethoden des Lebenszyklus einfügen und einen CursorAdapter verwenden Du wirst dieses Verhalten haben.

Der Adapter, den Sie verwenden, verwendet den Cursor, um seine Daten anzuzeigen, und da alles bei Rotation zerstört wird, muss es die Daten erneut abrufen (die vom Cursor stammen, der ebenfalls zerstört wurde).

Wenn Sie die Fahrt des Umladens bekommen wollen, würde ich vorschlagen, eine Liste zu füllen und einen normalen Adapter zu benutzen. Auf diese Weise können Sie die Liste speichern und bei der Rotation wiederherstellen und sie erneut an den Adapter übergeben.