Ho un'immagine che è più piccola del contenitore che mi piacerebbe inserire all'interno. Vorrei che l'immagine si allungasse, mantenendo le sue proporzioni, alla sua dimensione più grande possibile.Come rendere l'immagine più grande possibile mantenendo le proporzioni
Per illustrare questo problema:
<ImageView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/thumbnail"
android:scaleType="fitXY"
android:adjustViewBounds="true"/>
Il ImageView
sopra dovrebbe essere allungato per riempire la larghezza del contenitore. Il @drawable
che conteneva si estendeva anche lungo l'asse x per adattarsi alla larghezza di ImageView
che è perfetto. Tuttavia, il problema è che la dimensione denominata wrap_content
, in questo caso l'altezza, rimane delle stesse dimensioni dell'altezza iniziale di @drawable
s.
Ho letto la documentazione relativa a ScaleType here e non riesco a trovare la risposta lì.
L'immagine seguente descrive il codice sopra:
Current behaviour Desired Behaviour
Modifica
Un ImageView
dato scaleType="fitCenter"
sarà accuratamente espandere/ridurre il @drawable
all'interno di esso a crescere il più grande possibile, pur mantenendo ing è proporzioni.
Le dimensioni di ImageView
s sono definite prima che lo @drawable
venga ridimensionato in alcun modo. Le dimensioni di ImageView
non sono influenzate dal ridimensionamento dello stesso contenuto in @drawable
.
Per me, questo è un problema comune, uno per il quale non ho mai trovato una soluzione pulita. Aggiungi una patch di sfondo 9 per un frame, ed è ancora peggio tentare di risolvere il problema. Sono abbastanza sicuro che questo è qualcosa che devi fare a livello di programmazione, ma sarà bello se qualcuno ha una soluzione per questo. – kcoppock
+1 per una domanda completamente descritta – Merlin