J'essaie de convertir DP en pixels. J'utilise cette méthode: puis j'essaie d'obtenir le DP à partir d'une variable dans mon fichier dimen.xml, comme celui-ci: p> Puis je crée un bitmap mis à l'échelle avec la largeur de la variable code> ButtonWidth code>.
Ensuite, je le dessine à la toile. Mais quand j'essaie de le courir, rien ne s'affiche. Quelqu'un peut-il aider? P> p>
3 Réponses :
Je pense qu'il y a une faute de frappe dans votre question ou que vous ne chargez vraiment pas la valeur de la hauteur - vous chargez réellement un nombre représentant l'ID de la ressource. Il aurait dû être: mais ... vous n'avez pas besoin de faire la transformation vous-même: p>
public class DensityUtil { /** * dip to px */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (dpValue * scale + 0.5f); } /** * px to dp */ public static int px2dip(Context context, float pxValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (pxValue / scale + 0.5f); } }
convertir dp en pixel