Android: Obtenir la résolution de l'écran / pixels sous forme de valeurs entières

c'est vraiment une question simple à laquelle je n'ai pas trouvé de réponse :/
Comment puis-je accéder rapidement à la résolution de l'écran (largeur, hauteur) que des valeurs entières?

J'ai essayé celui-ci, mais il affiche toujours zéro sur mon émulateur:

DisplayMetrics dm = new DisplayMetrics();
int width = dm.widthPixels / 2;

Dans mon cas, je veux créer dynamiquement un tableau avec tableRows, contenant chacune deux cols. Cette cols, tous doivent remplir la moitié de l'écran en largeur.

Quelqu'un peut me donner un indice?

juste une supposition - les valeurs extraites de DisplayMetrics peut ne pas être valide jusqu'au premier tirage. êtes-vous de vérifier cela sur onCreate ou onDraw ou quand?
La vraie raison pour laquelle le résultat était nul est parce que le zéro est la valeur par défaut en java pour un int. dm.widthPixels n'a pas été initialisé, donc sa valeur est égale à zéro et zéro divisé par deux est aussi égal à zéro... vous devriez avoir essayé quelque chose comme mView.getContext().getResources().getDisplayMetrics()

OriginalL'auteur poeschlorn | 2010-05-25