Colección de citas famosas - Slogan de motivación - Unidades comunes en Android ppi, dp, dpi, sp, px

Unidades comunes en Android ppi, dp, dpi, sp, px

En el proceso de desarrollo de Android, usamos relativamente pocas unidades. Generalmente usamos sp para describir el tamaño de fuente y dp para configurar el espaciado. Aparte de eso, rara vez usamos sp. unidades, y muchas veces simplemente nos acostumbramos sin explorar por qué está escrito de esta manera, si se pueden usar otras unidades y qué significa cada unidad. Entonces, acostumbrarse a ellas da mucho miedo. Hoy, echemos un vistazo más de cerca y veamos el significado detrás de estas unidades.

El píxel es el punto más básico para mostrar datos en la pantalla. También es la unidad más básica en PS. Todos los gráficos se generan sobre esta base. Generalmente hablamos de la resolución de la pantalla del teléfono móvil. medido en píxeles, por ejemplo, en Android, a menudo decimos que los píxeles de los teléfonos móviles son 1080X1920, de hecho, lo que significa es que el teléfono móvil tiene 1080 píxeles en dirección horizontal y 1920 píxeles en dirección vertical.

La unidad utilizada para formar el tamaño de fuente en Android. En circunstancias normales, el texto se mostrará de acuerdo con el tamaño de texto establecido por el sistema del teléfono móvil, pero también será consistente con el texto establecido por. Por ejemplo, en algunos teléfonos antiguos, para operar mejor el teléfono móvil, algunas personas configurarán la fuente en una fuente más grande. En este momento, la fuente que usa sp como unidad también será más grande. la unidad de tamaño de fuente está configurada en dp, no cambiará con los cambios del sistema.

En cada conferencia de lanzamiento de nuevos productos de fabricantes de teléfonos móviles, escucharemos presentaciones sobre teléfonos móviles, como la resolución de pantalla y el tamaño del teléfono móvil, etc. Cuando conocemos la resolución y el tamaño de la pantalla de un teléfono móvil, podemos calcular la densidad física de píxeles del teléfono móvil. La fórmula de cálculo es:

Cabe señalar que PPI es la densidad física de píxeles de Android. teléfonos móviles, en lugar de la densidad de píxeles de la que hablamos a menudo en el proceso de desarrollo de Android.

La densidad de la pantalla está estrechamente relacionada con los ppp, que es el número de puntos por pulgada. Es decir, cuanto mayor sea la densidad, más puntos se podrán acomodar por pulgada.

Existe una clase DisplayMetrics en el paquete android.util para obtener información relacionada con la densidad. El miembro más importante es densidadDpi, que tiene los siguientes valores de uso común:

DENSITY_LOW = 120

DENSITY_MEDIUM = 160 //Valor predeterminado

DENSITY_TV = 213 / /Solo TV

DENSITY_HIGH = 240

DENSITY_XHIGH = 320

DENSITY_400 = 400

DENSITY_XXHIGH = 480

DENSITY_XXXHIGH = 640

El valor de ppp se obtiene principalmente a través de displayMetrics. El método de adquisición es:

val densidadDpi = resources.displayMetrics.densityDpi.

dp y dip son iguales, píxeles independientes del dispositivo, esto está relacionado con el hardware del dispositivo, diferentes dispositivos tienen diferentes efectos de visualización. Normalmente, cuando trabajamos en proyectos de Android, para adaptarnos a las muchas resoluciones de pantalla de teléfonos móviles del mercado, solemos utilizar dp. dp es una unidad abstraída del PPI de Android basada en dispositivos físicos.

Se define en base a una pantalla de 160 ppp. En una pantalla de 160 ppp, 1 dp = 1 px, luego podemos derivar su fórmula de cálculo:

Fórmula de conversión: 1 dp = (pantalla ppi/160) px o px = (pantalla). ppp/160)*1dp. Por ejemplo: suponiendo que ppi = 320, entonces 1dp = 2px.

Practiquemos a continuación:

Como se muestra en la figura, la resolución de pantalla del teléfono móvil es 1080X1920 y el tamaño es de 5 pulgadas. Por lo tanto, se calcula que el valor de PPI es. 440, y luego a través de PPI calcula que 1dp es aproximadamente igual a 3px. Supongamos que hay un ícono en la imagen proporcionada por el artista y que la distancia desde la parte superior es de 30 píxeles. Luego, de acuerdo con nuestro resultado de conversión final, podemos lograr un efecto de visualización perfecto configurándolo en 10 dp.