Platz Bildansicht
Ich versuche zu zeigen, eine ImageView
das ist immer in der Form quadratisch innerhalb des dialogs. Die Maße können variieren, abhängig von der Auflösung des Displays(Breite im hochformat, um genau zu sein), aber die Bildansicht ist erforderlich, um der größte Platz möglich, um Platz für ein quadratisches Bild drin. Das ist mein XML-code für die gleichen.
<ImageView
android:id="@+id/dialog_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerInside"
android:adjustViewBounds="true"
/>
Aber das problem ist, dass die Square
Bild eingestellt wird dynamisch zur Laufzeit und die Bildansicht am Ende ein Rechteck mit Breite wie das Quadrat der Bildgröße. Was kann ich tun, um das gleiche zu erreichen?
EDIT: um eine Vorstellung Zu geben von dem, was ich versuche zu erreichen ist, wie das, was gezeigt wird, wenn ein Kontakt ausgewählt ist, in der Kontakte-Anwendung und das Profil-Bild angeklickt wird. Es zoomt heraus und bleibt in einem Quadrat auf der Spitze der Aktivität.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Legen Sie die Bildansicht Höhe, in der Laufzeit aber zuerst Holen Sie sich die display-Breite mit diesem code
und stellen Sie nun die Höhe des Bildes anzeigen wie diese
Erstellen Sie eine separate Klasse für die Festlegung der Größe dynamisch für Ihre Bildansicht, die Erben sollen Bildansicht Klasse, wie unten gezeigt:
}
Den setMeasuredDimension(Breite, Breite); wird automatisch gesetzt, Ihre Höhe als die Breite.
In der xml-Datei verwenden Sie diese Klasse als ein Blick in Ort der Bildansicht, wie unten gezeigt:
können Sie verwenden :
in dieser Weise:
layout sollte ConstraintLayout
Erstellen Sie Ihre eigenen
ImageView
dass Erben sollte Bildansicht Klasse, wie unten gezeigt: