2016-07-01 30 views
5

Sto usando un'immagine circolare 128x128, animata da un drawable come segnaposto in Picasso.Picasso - come ridimensionare il segnaposto

enter image description here

<?xml version="1.0" encoding="utf-8"?> 
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android" 
    android:drawable="@drawable/loading_circle" 
    android:pivotX="50%" 
    android:pivotY="50%" /> 

Ed è così che il mio codice Java implementa:

Picasso.with(context) 
         .load(message.getMediaUrl()) 
         .config(Bitmap.Config.ARGB_4444) 
         .resize(w, h) 
         .onlyScaleDown() 
         .centerCrop() 
         .placeholder(R.drawable.progresscircle) 
         .into(messageImage); 

Nota che i parametri di dimensionamento delle immagini di cui sopra sono tenuti per l'immagine finale che viene caricato in imageview del mio adattatore Chat .

Il problema è, Picasso soffia su e ritagliare il segnaposto in questo modo:

enter image description here

Come si possono impostare parametri distinti per il segnaposto per essere di dimensioni adeguate? Inoltre, quali parametri esatti sarebbero utili?

+0

Hai trovato una soluzione? – Anirudh

risposta

4

in XML dove si imposta ImageView aggiungi.

android:scaleType="centerCrop" 

Potrebbe funzionare. è possibile impostare fitXY anziché centerCrop se non funziona.

+0

questo è lavoro per me. –

0

Prova questo:

Picasso 
.with(context) 
.load(message.getMediaUrl()) 
.fit() 
// call .centerInside() or .centerCrop() to avoid a stretched image 
.into(messageImage); 
0

cambiamento la chiamata Picasso a questo,

Picasso.with(context) 
        .load(message.getMediaUrl()) 
        .config(Bitmap.Config.ARGB_4444) 
        .fit() 
        .centerCrop() 
        .placeholder(R.drawable.progresscircle) 
        .into(messageImage);