Android lädt Bilder effizient (nicht genügend Speicher) [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Bitmap recyceln mit aktiviertem largeHeap 5 Antworten

Ich habe gerade angefangen, eine App für Android zu schreiben. Ich habe 3 Aktivitäten, die das gleiche XML-Layout verwenden, eine Rasteransicht. Sie verwenden auch denselben Adapter, um eine Bildansicht und eine Textansicht in jedem Rasterelement anzuzeigen. Wenn Sie in der ersten Aktivität ein Objekt auswählen, gelangen Sie zur zweiten und dann zur dritten Aktivität.

Zunächst habe ich die normale Methode "imageView.setImageResource (drawableid)" verwendet. Es war eigentlich kein Problem, aber wenn ich mehr Bilder in die Rasteransicht stecke, wird der Fehler "outofmemory" angezeigt.

So suche ich nach einer Lösung. Ich habe das Ding von der Android-Dev-Site mit Decode-Bitmap, Resize und Async-Task und so weiter ausprobiert. Die andere Sache war die Picasso-Bibliothek, die mit "Picasso.with (mContext) .load (imageURI) .into (imageView);" sehr einfach sein würde. Aber Picasso ist zu langsam für den Gridview. Es sieht beim Scrollen durcheinander aus. Und manchmal wurden einige Bilder nicht geladen.

Alle Metoden füllen den Speicher und die App stürzt ab, wenn ich die Aktivitäten ein paar Mal öffne. Was mache ich falsch? Kann ich den Speicher selbst freigeben, wenn ich die erste Aktivität der zweiten überlasse?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage