studio programacion para móviles libros gratis español edición desarrollo desarrollar curso con aprende aplicaciones android image import adt image-size

programacion - Android-Agregar imágenes al proyecto



manual programacion android español pdf (2)

Soy nuevo en Android y estoy usando Eclipse ADT para crear una aplicación sencilla. Esta aplicación tiene un botón que cambia su imagen de fondo según los clics del usuario.

Noté que hay 4 carpetas para imágenes en mi proyecto: drawable-hdpi, drawable-ldpi, drawable-mdpi, and drawable-xhdpi .

y también noté que las imágenes que están allí actualmente (el ícono del iniciador) son de diferentes tamaños.

¿Esto significa que tengo que usar algún software de edición de imágenes para crear una imagen para cada resolución para cada una de mis imágenes? O (con suerte) ¿hay una manera de importar una imagen y hacer esto automáticamente?

¡Gracias!


¿Esto significa que tengo que usar algún software de edición de imágenes para crear una imagen para cada resolución para cada una de mis imágenes? O (con suerte) ¿hay una manera de importar una imagen y hacer esto automáticamente?

Si ya tiene fuentes de alta resolución (o formatos de gráficos vectoriales) de sus imágenes, puede usar Android Asset Studio para generar iconos / imágenes a partir de sus propias imágenes de origen para cada densidad (menos xxhdpi). También puede crear iconos / imágenes a partir de imágenes prediseñadas predeterminadas de Android, que pueden ser temáticas para varias versiones de Android. Esto le ahorrará parte de la molestia de cambiar el tamaño y guardar con una herramienta de edición de imágenes.


Las imágenes y otros archivos visuales se almacenan en uno o más directorios dibujables. Si solo está en un directorio, Android escalará la imagen según sea necesario. Si se usa más de un directorio, Android seleccionará la imagen del tamaño apropiado.

  • drawable-ldpi - Imágenes de baja densidad
  • drawable-mdpi - Imágenes de densidad media
  • drawable-hdpi - Imágenes de alta densidad
  • drawable-xhdpi - Imágenes de densidad extra alta (es decir, pantallas tipo retina)
  • drawable-xxhdpi: imágenes extra de alta densidad (dispositivos como Nexus 10, Samsung Galaxy S4, HTC One y Sony Xperia Z)
  • drawable-xxxhdpi - Imágenes triples de alta densidad ( Nexus 6 y 9 )

(Nota: los archivos XML también se pueden escribir y almacenar como elementos dibujables. Estos tipos de archivos pueden controlar cuándo se van a usar varias imágenes según el estado de una vista u otras configuraciones visuales como gradientes, bordes, etc.)

Entonces, ¿ qué debes hacer?

Para mejores resultados (de la documentación del desarrollador de Android ):

Para generar estas imágenes, debe comenzar con su recurso en bruto en formato vectorial y generar las imágenes para cada densidad utilizando la siguiente escala de tamaño:

  • xxxhdpi: 4.0
  • xxhdpi: 3.0
  • xhdpi: 2.0
  • hdpi: 1.5
  • tvdpi: 1.33 (solo televisores)
  • mdpi: 1.0 (línea de base)
  • ldpi: 0.75

Esto significa que si genera una imagen de 200x200 para dispositivos xhdpi, debe generar el mismo recurso en 150x150 para hdpi, 133x133 para tvdpi, 100x100 para mdpi y, finalmente, una imagen de 75x75 para dispositivos ldpi.

Si solo quieres usar una imagen y dejar que Android se adapte a ti:

Más del 75% de los dispositivos Android ahora tienen hdpi o mayores resoluciones, de acuerdo con el Tablero en el sitio del Desarrollador de Android . Entonces, si crea una imagen en hdpi, por ejemplo, se verá perfecta en aproximadamente un tercio de los dispositivos, aumentará la escala para algunos y reducirá la escala para aproximadamente el 25% de los dispositivos. En general, creo que también sería mejor reducir la escala que aumentarla.