Ich bin ein ImageView
auf eine Datei von einem Remote-Server heruntergeladen dann im lokalen Speicher des Geräts gespeichert. Aus irgendeinem Grund wird das Bild verzerrt. Von meiner Forschung, wenn ich die scaleType
, adjustViewBounds
, maxWidth
und maxHeight
Eigenschaften der ImageView
setze, dann wird Android das Bild für mich skalieren. Das ist merkwürdig, weil ich in meiner anderen, nicht-Android-Entwicklung, immer zuerst das Bild programmatisch anpassen musste, bevor ich es anzeigen konnte. Allerdings sagt this post Android wird es tun.Programmatisch Einstellung ImageView verursacht Verzerrung
Dies ist das Bild, das ich bin zu Anzeige versuchen: Image
Verzerrtes Bild:
Code:
<ImageView
android:id="@+id/title_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxWidth="60dp"
android:maxHeight="60dp"
android:scaleType="fitCenter"
android:adjustViewBounds="true"
/>
String path = getExternalStorageDirectory() + "/MyApp/Images";
String fileName = "Test.jpg";
File imageFile = new File(path, fileName);
if (imageFile.exists())
{
Uri imageUri = Uri.fromFile(imageFile);
((ImageView)findViewById(R.id.title_image)).setImageURI(thumbnail);
}