2010-09-14 24 views
5

Siento como si me falta algo.Android- Proporcionar recursos alternativos que no funciona?

En mi aplicación, decidí proporcionar recursos dibujables alternativos y archivos de diseño alternativos. Mi estructura es la siguiente:

res/dibujable-IPAP/filename.png
res/dibujable-MDPI/filename.png
res/dibujable-LDPI/filename.png

res/layout-pequeña /layout.xml
res/layout-grande/layout.xml
res/layout/layout.xml

que crearon tres emuladores diferentes: una con el HVGA por defecto, una con QVGA, y uno con WVGA800

Parece que no recoge esos recursos/diseños alternativos en función del tamaño/densidad de la pantalla, ¿o quizás no puedo decirlo?

¿Hay alguna manera, además de usar un dispositivo para cada tamaño específico, de probar esto? ¿O solo me estoy perdiendo algo importante?

Otra pregunta, ¿qué tan bien Android escala escalable si no existe un recurso alternativo?

Respuesta

1

Unos pocos puntos, en ningún orden en particular:

  • diseños están relacionados con el tamaño de pantalla y de este modo a grande, mediano, pequeño y dibujables están relacionados con la densidad y por lo tanto a IPAP, MDPI, LDPI. Es obvio para algunos y no tan fácil de entender para otros.
  • Lea a través de this y cree sus dispositivos emuladores como se especifica en esta página, vuelva a verificar para asegurarse de que los tenga bien.
  • Ahora comience simplemente con un diseño simple y pruébelo en la máscara predeterminada del dispositivo, luego agregue el diseño-320x480, pruebe, repita para otros tamaños. Si está usando maquetación: grande/pequeña, etc., recuerde agregar las líneas correctas a AndroidManifest.xml <supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizable="true" android:anyDensity="true" />
  • Una forma simple de hacerlo es tener una carpeta predeterminada layout.xml y drawables, y para diferentes tamaños tener layout- 320x480.xml, etc. carpetas y diferentes densidades tenemos carpetas drawables-hdpi, etc. Si se asegura de configurar android:anyDensity="false" /> en el archivo de manifiesto, el teléfono obtendrá los diseños y activos correctos en función de sus atributos.

Si establece android:anyDensity="false" /> archivo de manifiesto en el teléfono maneja el dimensionamiento de dibujables, típicamente teniendo activos de la carpeta dibujables y cambiar su tamaño.

+0

puntos buenos. Solo para observar que de acuerdo con [los documentos] (http://developer.android.com/guide/topics/manifest/supports-screens-element.html) 'android: resizable' no se debe usar en el manifiesto. –

1

En la versión 3.2 anterior desarrollador de Android han sido puestos en libertad dos cosas nuevas para las tabletas

layout-sw600dp-land 
layout-sw720-land