Großes Bild von SD-Karte in Android anzeigen

7

Wie zeigt man in Android ein Bild ( beliebiger Größe ) von der SD-Karte an, ohne einen Speichermangel zu bekommen ?

Muss das Bild zuerst im Media Store gespeichert werden?

Ein Pseudocode-Beispiel würde sehr geschätzt werden. Zusätzliche Punkte, wenn das angezeigte Bild so groß ist wie die Speicherstufe des Geräts zulässt.

    
hpique 17.12.2010, 12:36
quelle

4 Antworten

13

Bearbeiten: Diese Frage wurde bereits bei Seltsam aus dem Speicher beantwortet Problem beim Laden eines Bildes in ein Bitmap-Objekt (die zwei am häufigsten gewählten Antworten). Es verwendet auch die Option inSampleSize , aber mit einer kleinen Methode, um automatisch den passenden Wert zu erhalten.

Meine ursprüngliche Antwort:

Das inSampleSize der Klasse BitmapFactory.Options kann Ihr Problem lösen ( Ссылка ). Es funktioniert, indem man eine Bitmap mit der resultierenden Breite und Höhe 1 / inSampleSize als das Original erstellt, wodurch der Speicherverbrauch reduziert wird (um inSampleSize ^ 2?). Sie sollten das Dokument lesen, bevor Sie es verwenden.

Beispiel:

%Vor%

Aber hier funktioniert es nur für Bilder bis zu, ich denke, inSampleSize ^ 2 mal die Größe des erlaubten Speichers und wird die Qualität von kleinen Bildern reduzieren. Der Trick wäre, das passende inSampleSize zu finden.

    
Gautier Hayoun 19.12.2010, 14:13
quelle
4

Ich zeige Bilder beliebiger Größe unter Verwendung von Code an:

%Vor%     
barmaley 20.12.2010 19:28
quelle
2

Zum Beispiel:

%Vor%     
mysuperass 17.12.2010 15:26
quelle
0

Ссылка deckt alle ab Sie müssen jemals über das Thema Bilder wissen, einschließlich erhalten sie von einer SD-Karte. Sie werden dort den Code finden, der unten kopiert wird:

%Vor%     
PearsonArtPhoto 17.12.2010 13:12
quelle