8
votes

Comment convertir DP en pixels et et l'utiliser pour dessiner sur toile dans Android

J'essaie de convertir DP en pixels. J'utilise cette méthode: xxx

puis j'essaie d'obtenir le DP à partir d'une variable dans mon fichier dimen.xml, comme celui-ci: xxx

Puis je crée un bitmap mis à l'échelle avec la largeur de la variable ButtonWidth . Ensuite, je le dessine à la toile. Mais quand j'essaie de le courir, rien ne s'affiche. Quelqu'un peut-il aider?


0 commentaires

3 Réponses :


16
votes

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: xxx

mais ... vous n'avez pas besoin de faire la transformation vous-même: xxx


0 commentaires

9
votes
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);  
    }  
}  

0 commentaires

-1
votes

convertir dp en pixel xxx


0 commentaires