android Imageview layoutparams en plongeon?
-
01-10-2019 - |
Question
J'utilise le code suivant:
i = ImageView ImageView nouveau (mContext);
i.setImageResource (mImageIds [poste]);
i.setScaleType (ImageView.ScaleType.FIT_XY);
//pixels settings !!!
i.setLayoutParams (nouveaux Gallery.LayoutParams (200, 100));
mais comme vous pouvez le voir, il met les dimensions de la mise en pixels.
Quelqu'un sait comment faire la même chose mais dans « dip »?
La solution
Voir http://developer.android.com/guide/ pratiques / écran indépendance screens_support.html #
Sur la façon de convertir en pixels dpi.
Autres conseils
La méthode d'assistance suivante prend comme dispositif d'entrée des pixels indépendants (DIP) et les rendements de pixels réelles pour le dispositif en cours.
private int getPixels(int dipValue) {
Resources r = getResources();
int px = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
dipValue,
r.getDisplayMetrics());
return px;
}
Si vous stockez votre dimension en tant que ressource, vous pouvez utiliser
getResources().getDimensionPixelSize(id);
Cela permettra également plus facile d'ajuster vos mises en page.