Pregunta

¿Cuál es la diferencia entre las tres carpetas dibujable en la res carpeta en la jerarquía del proyecto? Si tengo una imagen para poner en una carpeta, la carpeta que puedo poner en?

¿Fue útil?

Solución

Me voy a tomar una conjetura que "las tres carpetas dibujable" son drawable-ldpi, drawable-mdpi y drawable-hdpi. En ese caso, si usted se pega con todas esas carpetas, hay que poner una imagen en cada uno, de tamaño para que coincida con la densidad de la pantalla indicada. Esto se discute en el línea documentación , así como este entrada de blog . Se puede encontrar un conjunto de proyectos de ejemplo que muestra el uso de diferentes recursos dibujable basadas en la densidad de pantalla aquí.

Si se acaba de empezar en el desarrollo de Android, que puede deshacerse de los tres de esos directorios y crear un directorio drawable sola, poniendo su imagen en ese país. Eventualmente, sin embargo, para una aplicación de calidad, tendrá que poner a prueba las imágenes en diferentes dispositivos / emuladores con diferentes densidades de pantalla, y posiblemente tener diferentes imágenes para cada densidad para mejorar el aspecto de su aplicación.

Otros consejos

Esta es una referencia a opciones del dispositivo de múltiples .

Según lo dicho por @CommonsWare, no lo hace necesidad para poner recursos en algo que no res / layout / o estirable / pero si usted quiere que su programa para tener una mejor experiencia en varios dispositivos con diferentes pantallas / densidad / idiomas es posible que desee considerar que tiene esa opción.

También es interesante, aunque no específica a las imágenes, es como androide recursos asas. Se les da una orden de carga, donde los medios más específicos que va a ser recogido durante menos específico.

Por ejemplo, usted tiene tres valores de cadena en strings.xml en su carpeta de valores. También tiene una cadena específica en una carpeta llamada-en valores. Cuando androide abre su aplicación y su configuración regional coincide en, cargará dos valores por defecto de los valores de carpeta y la tercera cuerda, más específica, a partir de los valores-en. Si el entorno local es ru, se acaba de utilizar el valor predeterminado en lugar porque no tiene valores de ru-carpeta.

Lo mismo es cierto para las imágenes. Si no encuentra lata androide imágenes para su variante de pantalla específica, se utilizará por defecto de la carpeta estirable.

En mi opinión, es una buena práctica tener valores por defecto / imágenes en sus carpetas genéricos como los valores de los valores / dibujable específicos y / imágenes en carpetas específicas. De esta manera ambos dispositivos actuales y futuros tendrán al menos una forma de mostrar su contenido hasta que pueda ofrecer versiones específicas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top