J'ai utilisé l'unité pt
dans des fichiers XML. Maintenant, j'ai besoin de définir la largeur d'un élément à l'exécution. Comment puis-je définir la largeur par points afin que ce soit la même unité que j'ai utilisée partout ailleurs. Je suppose que je vais devoir multiplier par résolution et ppp. Un échantillon de code serait le meilleur.Android: convertir des points en pixels
Répondre
D'abord, vous devriez vraiment lire ce qui suit en profondeur l'article de la documentation Android Developer:
http://developer.android.com/guide/practices/screens_support.html
droit au milieu, vous trouverez la suivant sous le titre:
N'utilisez pas de valeurs de pixels codées en dur dans votre code
// Convert the dps to pixels
final float scale = getContext().getResources().getDisplayMetrics().density;
mGestureThreshold = (int) (GESTURE_THRESHOLD_DP * scale + 0.5f);
Pourquoi y a-t-il un "+ 0.5f" sur la deuxième ligne? Nombre magique dans cet exemple ou est-il nécessaire de convertir correctement les pixels en dp? – C0deAttack
Arrondit au entier le plus proche lorsque l'expression est convertie en nombre entier. – Blrfl
Blrfl a raison de arrondir à l'entier le plus proche. – Yahel
Vous pouvez utiliser dip
au lieu de pt
J'utilise pt au lieu de dip parce que cela a plus de sens pour les non-programmeurs. Si quelqu'un me demande la taille, je peux dire 12 points et ils peuvent savoir ce que c'est. Si je dis pixels alors ils ne réalisent pas que les pixels d'Android sont beaucoup plus petits qu'ils ne le sont sur PC et si je dis dips alors ils seront confrontés à un nouveau mot. Tout ça de côté. Puis-je utiliser dip à l'exécution? Puis-je convertir un pt en dip? –
En ce qui concerne votre trempette à la question de l'exécution. Oui, vous pouvez, mais vous devez convertir les pixels en DP en multipliant les pixels par le facteur d'échelle des écrans que vous pouvez obtenir avec context(). GetResources(). GetDisplayMetrics(). Density. – C0deAttack
- 1. Convertir mm en pixels
- 2. Comment convertir les points GPS en pixels d'écran avec incrustation?
- 3. Android, OpenGL convertir les vertices en pixels
- 4. android combien de pixels entre 2 points
- 5. Bitmap Android: convertir des pixels transparents en une couleur
- 6. Convertir lat/lon en pixels
- 7. Convertir des coordonnées de graphiques en pixels
- 8. Comment convertir des coordonnées géographiques en pixels?
- 9. Points Versus Pixels ios
- 10. Android Convertir les pixels en inchec, en millimètres
- 11. Convertir des Pixels en mm/cm depuis DICOM Tags (Echographie)
- 12. Comment convertir les pixels en dip (Density Independent Pixels) dans Android
- 13. Comment convertir des pixels en millimètres en Qt4.7?
- 14. Comment convertir les dimensions en pixels et la position des pixels d'un div en pourcentage?
- 15. je veux convertir les pixels google map en kilomètres
- 16. Android - pixels à dips
- 17. Traitement des pixels dans Android
- 18. Convertir l'emplacement des pixels en latitude/longitude et vice versa
- 19. Comment convertir des twips en pixels dans .NET?
- 20. Convertir en notation par points
- 21. Convertir les pixels en grille pour CCTMXTiledMap
- 22. Convertir les coordonnées Google Maps en pixels
- 23. android Comment convertir les coordonnées des pixels en LatLng sur mapsv2
- 24. Flex: Renvoie les points aux pixels et à nouveau
- 25. Convertir jpeg/png en une matrice de pixels en java
- 26. Android la définition des pixels indépendants de la densité
- 27. Obtenir des pixels de Bitmap Rotation Android
- 28. convertir des points sur la carte en polygones
- 29. Dessiner des pixels en utilisant OpenGLEs pour Android
- 30. Convertir les pixels en pouces et vice versa en C#
S'il vous plaît voir mon article concernant la conversion des points en pixels http://systemdotrun.blogspot.co.uk/2014/09/whats-point-in-font-sizing.html? – Dori