studio - ¿Cómo preparo las imágenes para todas las resoluciones de Android?
tamaño de imagen para celular (4)
Conseguí esto fuera de este sitio hace un tiempo, todavía es útil
xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp
Generalised Dpi values for screens:
ldpi Resources for low-density (ldpi) screens (~120dpi)
mdpi Resources for medium-density (mdpi) screens (~160dpi). (This is the baseline density.)
hdpi Resources for high-density (hdpi) screens (~240dpi).
xhdpi Resources for extra high-density (xhdpi) screens (~320dpi).
Therefore generalised size of your resources (assuming they are full screen):
ldpi
Vertical = 426 * 120 / 160 = 319.5px
Horizontal = 320 * 120 / 160 = 240px
mdpi
Vertical = 470 * 160 / 160 = 470px
Horizontal = 320 * 160 / 160 = 320px
hdpi
Vertical = 640 * 240 / 160 = 960px
Horizontal = 480 * 240 / 160 = 720px
xhdpi
Vertical = 960 * 320 / 160 = 1920px
Horizontal = 720 * 320 / 160 = 1440px
px = dp*dpi/160
En iOS preparar gráficos es simple. Hay una imagen normal (altura x anchura) o una imagen de retina que es @ 2x (2 veces la altura x 2 veces la anchura).
Sin embargo, como soy nuevo en Android, veo una tonelada de carpetas dibujables * en Eclipse donde el * puede ser "hdpi" o "ldpi" o "mdpi" o "xhdpi" o "xxhdpi". ¿Puede alguien muy clara y simplemente enumerarme qué debo hacer para satisfacer cada una de las posibilidades de visualización para que mis imágenes se vean bien en cada caso? Estoy imaginando que una respuesta será una lista con viñetas con cada "*" en la lista y una lista con sub-viñetas que incluye las cosas que deben hacerse.
También me gustaría realmente disfrutar de una respuesta que comenzaría con la densidad más alta y la imagen de mayor dimensión y trabajando hacia abajo ya que crearé en Photoshop y reduciré la calidad de una imagen maestra. ¡Gracias por adelantado!
En Android Studio, vaya a File -> New -> Image Asset
y cree sus imágenes directamente desde el IDE.
En Android, generalmente manejamos tamaños de imagen en unidades de "dp" o "dip", que representan píxeles independientes del dispositivo. 1 dip = 1 píxel, en una pantalla mdpi. Hay muchos dispositivos por ahí con diferentes densidades de pantalla, no solo la normal y la retina, por lo que hay varios compartimientos de DPI en los que puede caer la pantalla del dispositivo:
- ldpi (bajo dpi): alrededor de 120 dpi
- mdpi (dpi mediano): alrededor de 160 dpi
- hdpi (alta dpi): alrededor de 240 dpi
- xhdpi (xtra high dpi): alrededor de 320 dpi
Tenga en cuenta que estos son depósitos, por lo que un dispositivo con una pantalla de 170 ppp contará como un dispositivo mdpi.
Supongamos que tiene una imagen vectorial en PS y necesita crear un recurso de imagen para Android y le gustaría admitir todas estas densidades de pantalla. Digamos que la imagen tiene que ser 100x100 de inmersión grande. Así que creas una versión de 100x100 píxeles para mdpi, una versión de 150x150 píxeles para hdpi, 200x200 para xhdpi, y 75x75 para ldpi. Puede pensar que "mdpi - xhdpi" en Android es "normal - retina" en iOS.
En cuanto al gran tamaño de imagen que puedes usar, realmente no puedo decirlo. Por lo que sé, no existe un límite estricto, pero obviamente el dispositivo no podrá cargar un mapa de bits de 20000x20000 en la memoria sin reducir el muestreo debido a los límites de almacenamiento dinámico.
Hay una herramienta en línea para ese Android Asset Studio y también hay un archivo | Nuevo | Conjunto de iconos de Android en Eclipse