Ich habe ein wirklich einfaches Bild in einem RelativeLayout
und aus irgendeinem Grund bekomme ich oben und unten zusätzlichen Abstand, den ich nicht entfernen kann. Wie kann ich das klären?
So sieht es aus:
Hier ist der Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/slice11pp" />
</RelativeLayout>
In Ihrem obigen
imageView
fügen Sie einfach hinzuandroid:scaleType="fitXY"
quelle
Ihr Problem ist wahrscheinlich, dass Sie keinen Skalentyp festgelegt haben ... Fügen Sie ihn zum XML für die ImageView hinzu. "FitCenter" sollte korrekt sein, aber es gibt andere, überprüfen Sie: ScaleType .
<ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:src="@drawable/slice11pp" android:scaleType="fitCenter" />
quelle
Muss ausreichen, um die Eigenschaft hinzuzufügen:
android:adjustViewBounds="true"
zum Beispiel:
<ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:src="@drawable/slice11pp" android:adjustViewBounds="true" />
quelle
Wenn Ihre Bildansichtshöhe match_parent ist, auch wenn Sie android festlegen: adjustViewBounds = "true" ImageView fügt oben und unten zusätzliche Leerzeichen hinzu. Ändern Sie also die ImageView-Höhe in wrap_content und setzen Sie android: adjustViewBounds = "true"
zum Beispiel
<ImageView android:id="@+id/img_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:adjustViewBounds="true"/>
quelle
Verwenden Sie den Ordner drawable-nodpi, wenn keine besonderen Anforderungen für Bilder bestehen. Dann
android: adjustViewBounds = "true"
fungiert als Standard.Wenn Sie drawable-nodpi verwenden, müssen Sie keine Einstellungen vornehmen
android:adjustViewBounds = "true"
.Ich denke, das ist die müheloseste Methode.
quelle
android: scaleType = "centerCrop" durch Hinzufügen dieser
<ImageView android:id="@+id/image" android:layout_width="200dp" android:layout_height="200dp" android:src="@drawable/temp_image" android:adjustViewBounds="true" android:scaleType="centerCrop"/>
funktioniert für mich Vorher und Nachher Bild
quelle
Diese Codezeile löst das Problem
android:adjustViewBounds="true"
Vergessen Sie nicht, das Bild zu drehen
quelle
Fügen Sie einfach ScaleType = "fitxy" in die Bildansicht ein
quelle
Versuche dies
<ImageView (...) android:adjustViewBounds="true" />
quelle
Das ist die perfekte Lösung
<ImageView android:id="@+id/imageView" android:layout_width="match_parent" android:layout_height="match_parent" android:adjustViewBounds="true" android:scaleType="fitXY" />
es wird keine zusätzliche einzelne dp in irgendeiner Seite hinterlassen. Das Bild wird jedoch verzerrt, wenn es kein Porträtbild ist.
quelle