Die Größe der Bilder mit Glide in einer Bildansicht Android
Ich habe viele Zweifel über die Behandlung der Bilder in android, und ich hatte gehofft, um zu sehen, ob Sie Sie lösen kann.
In diesem Punkt habe ich ein Bild, das in 320 dp hoch, und match_parent Breite, die rund 60% des Bildschirms.
Dieses Bild von der Belastung mit Glide einige Bilder in 1080, die ich persönlich.
Habe ich versucht, centroCrop und fitXY, aber immer verformen Sie die Bilder. Der erste Typ, den ich kenne, schneidet das Bild, aber der zweite passt einer Größe, aber es funktioniert verformen das Bild hoch oder breit.
Gibt es eine Möglichkeit, um fügen Sie es mit Glide und sehen, wie es ist?
Welche Eigenschaften habe ich zu berühren auf Bildansicht und welche Glide?
<ImageView
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:nestedScrollingEnabled="false"
app:layout_collapseMode="parallax"
android:scaleType="fitXY"
app:layout_scrollFlags="scroll|enterAlways" />
- Verwenden
.override(w,h)
für Sie. - Und ich habe ein Bild, das nicht mit 1080? Zum Beispiel mit einem Benutzer. Sie haben Bilder mit diferents Größen.
- überprüfen Sie die benutzerdefinierte transformation, die mit Glide.
- Nicht verstehen.. was ist Ihr problem, wenn Sie überschreiben(w,h)??
Du musst angemeldet sein, um einen Kommentar abzugeben.
Override
zugegriffen werden muss überRequestOptions
in der neuesten version vonGlide 4.x
. Sie können hinzufügenRequestOptions
durchapply()
in glide 4.x 'überschreiben' in 'gelten' :
@Raghunandan ist richtig.Sie sollten versuchen, die transformation deiner eigenen Weise.
Wenn Sie möchten, laden Sie das Bild ohne die Verwendung glide, dann können Sie scaleType "fitCenter" oder "centerInside" wie folgt -
Sich mit Glide können Sie überschreiben(w,h). Wenn Sie überschreiben(w,h), gleiten erzeugt eine neue bitmap mit der Breite und Höhe erwähnt überschreiben(w,h) und laden Sie das Bild in die Bildansicht. Sie können fitCenter (), um die Ausrichtung des Bilds. Sie können auch diskCacheStrategy(). Wenn Sie es nicht verwenden, Gleiten Sie fangen nur neu erzeugten bitmap. Wenn Sie möchten, zu fangen, original-Bild, das auch dann verwenden diskCacheStrategy(DiskCacheStrategy.ALLE).
Ich hoffe, das hilft.
müssen Sie die folgenden mit Ihrem Bildansicht :
und diese mit Ihrer glide :
Dies funktioniert perfekt bei mir .
Glide 4.x - Wenn Sie möchten, bekommen bitmap versuchen: