2016-04-19 9 views
0

Ich habe ein Problem, ich möchte ein sehr langes Bild aus dem Internet in der ListView mit Adapter anzeigen, aber es trat ein Problem: Bitmap zu groß, um in eine Textur (600x4517, max = 4096x4096) hochgeladen werden. wenn ich eine Aussage wie folgt hinzufügen: android: hardwareAccelerated = "false" in der Manifest.xml, kann es anzeigen, aber die Erfahrung des Scrollens nicht gut. Wenn ich BitmapFactory zum Komprimieren von Bildpixeln verwende, wird das Bild unscharf. Wenn ich ein Bild ohne Bilddeformation anzeigen möchte, was kann ich tun? Ich habe eine Idee, wenn ich Teile des Bildes laden kann, die sichtbar sein können? das Projekt verwenden Volley und Glide.Thanks für alleWie kann ich ein sehr großes Bild aus dem Internet laden?

Antwort

1

Laden von Bildern für Android kann ein gefährlicher Prozess sein.

Sie laden extrem große Bilder. Android ist notorisch schlecht im Umgang mit diesen. Gewöhnlich ergibt sich OutOfMemoryError s.

Sie sind gut beraten, wenn Sie das Laden von Netzwerken auf Ihrem Gerät überdenken. Vor allem in einem ListView!

Darüber hinaus ist es gut, eine etablierte Bibliothek für diese Art von Funktionalität zu verwenden. Wie Picasso.

Beispiel:

Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView); 
+0

Große Antwort @Knossos ich die ähnliche problem.Using Picasso zugewandt war ich meine problem.Upvoting Ihre Antwort nur gelöst. – Lampard

+0

Kannst du etwas über die Verwendung von Picasso erzählen, um dieses Problem zu lösen? –

+0

Es gibt viele verschiedene Beispiele für die Verwendung von Picasso auf ihrer Website. Sie sollten sich ihre Beispiele anschauen, um zu sehen, wie Sie sie am besten in Ihre App integrieren können. Ich habe ein Beispiel von ihrer Website hinzugefügt. – Knossos

Verwandte Themen