2012-03-09 4 views
20

Android nos permite definir hdpi/mdpi/ldpi para la carpeta dibujable para contabilizar pantallas/dispositivos de diferentes tamaños. Me preguntaba si se puede aplicar ese mismo soporte para la carpeta Valores (o incluso la carpeta de diseño)? Por lo que respecta a la razón, normalmente defino un archivo "sizes.xml" que contiene tamaños dp estándar que aplico a márgenes y rellenos. También hago lo mismo con los tamaños sp para texto. Me gustaría ajustar esos valores en función de los dpi de los teléfonos.Android hdpi/mdpi/ldpi para la carpeta Valores?

Respuesta

26

Sí, creo que cualquier cosa en la carpeta res/ puede usar "Calificadores de configuración". Entonces, por ejemplo, puede tener una carpeta values-sw600dp-mdpi-land/.

Véase "Utilización de la configuración Calificadores": http://developer.android.com/guide/practices/screens_support.html#qualifiers

Primero me di cuenta esto mirando código de ejemplo de aplicaciones de Google IOSched, mirar en la carpeta res: https://github.com/google/iosched/tree/master/android/src/main/res

Vas a ver que tienen " valores-sw600dp-land "," values-w400dp "y" values-v17 "carpetas, solo por nombrar algunos.

0

Sí, puede definir los archivos que se utilizarán en función de los modificadores estándar. Por ejemplo, en una de mis aplicaciones he definido los archivos styles.xml y strings.xml para varios tamaños y orientaciones, y todo funciona como los valores esperados -hdpi grande y valores-large-land-hdpi, etc.

3

Como las carpetas de valores son más adecuadas para configurar diferentes márgenes y tamaños de fuente según la resolución del dispositivo, aunque algunos dispositivos hdpi toman valores de values-xhdpi. Por lo tanto, en lugar de usar values-normal-hdpi, values-normal-xhdpi es la respuesta más adecuada.

Al usar esto, también podemos omitir la necesidad de diferentes carpetas de diseño estableciendo diferentes dps y tamaños en carpetas de valores para admitir teléfonos y tabletas muy fácilmente.

23

Sí, puedes. Al igual que este:

res/values/dimens.xml(default) 
res/values-ldpi/dimens.xml (240x320 and nearer resolution) 
res/values-mdpi/dimens.xml (320x480 and nearer resolution) 
res/values-hdpi/dimens.xml (480x800, 540x960 and nearer resolution) 
res/values-xhdpi/dimens.xml (720x1280 - Samsung S3, Micromax Canvas HD, etc) 
res/values-xxhdpi/dimens.xml (1080x1920 - Samsung S4, HTC one, etc) 
res/values-large/dimens.xml (480x800) 

res/values-large-mdpi/dimens.xml (600x1024) 
res/values-sw600dp/dimens.xml (600x1024) 
res/values-sw720dp/dimens.xml (800x1280) 
res/values-xlarge-xhdpi/dimens.xml (2560x1600 - Nexus 10") 
res/values-large-xhdpi/dimens.xml (1200x1920 - Nexus 7"(latest)) 

(a partir de: http://wiki.jikexueyuan.com/project/android-actual-combat-skills/multi-resolution-adapting-common-directory.html Advertencia:. El enlace es chino !!! Para traducir, haga clic derecho en la página, haga clic en "traducir al Inglés" en el menú emergente)

Cuestiones relacionadas