2010-09-23 15 views
33

Quindi sto caricando le immagini da un servizio web, ma le dimensioni delle immagini sono a volte più piccole o più grandi di altre immagini e la visualizzazione sembra stupida quando Li ho messi in un ListView in Android. Mi piacerebbe aggiustare la dimensione del mio ImageView in modo che mostri solo una parte dell'immagine se è più grande di una quantità preimpostata. Ho provato tutto quello che posso pensare di impostare il setMaxWidth/setMaxHeight, impostando il tipo di scala su centerCrop, usando ClipableDrawable avvolgendo il mio BitmapDrawable, impostando usando Drawable.setBounds(). Ho provato a impostare in XML e in modo programmatico, ma nessuno dei due ha funzionato. Sono molto sorpreso di impostare la larghezza/altezza massima non ha fatto nulla. Di seguito è riportato l'XML che sto utilizzando la definizione di ImageView nel mio file di layout:Come faccio a rendere il mio ImageView a dimensione fissa indipendentemente dalle dimensioni della bitmap

<ImageView android:id="@+id/recipeImage" 
      android:maxHeight="64px" 
      android:maxWidth="64px" 
      android:scaleType="centerCrop" 
      android:layout_width="wrap_content" 
      android:layout_height="fill_parent" 
      android:layout_alignParentTop="true" 
      android:layout_alignParentBottom="true" 
      android:layout_marginRight="6dip"/> 

Nulla ha funzionato. Oooooouweee Che succede con dat? :-)

risposta

41

Basta eliminare gli attributi maxHeight e maxWidth e inserire le unità in layout_width e layout_height in modo appropriato. Ma non usare l'unità 'px' - usa invece 'dp', perché sono indipendenti dal dispositivo.

+1

Avrei giurato di averlo provato. Grazie per l'aiuto. – chubbsondubs

+0

Cosa dire di 'MinHeight' e' minWidth'? –

0

Si adatta all'immagine in altezza e larghezza specificate, indipendentemente dalle dimensioni dell'immagine.

<ImageView 
     android:id="@+id/image5" 
     android:layout_width="300dp" 
     android:layout_height="200dp" 
     android:src="@drawable/image_1" 
     android:scaleType="fitXY"/> 
Problemi correlati