2011-01-10 14 views
5

Según this doc page, Android 2.3 admite tamaños de pantalla extra grandes (xlarge), y puede declarar que sus aplicaciones admiten este tamaño agregando android:xlargeScreens="true" en la etiqueta <supports-screens> en el archivo Manifest.¿Cómo admitir pantallas extra grandes en Android?

Pero, dado que mi aplicación está destinada a una versión mínima de SDK de Android 2.1, la compilación no se queja de un atributo desconocido.

No quiero usar el nuevo SDK porque no recibiré advertencias si accidentalmente uso 2.3 características específicas.

¿Hay alguna salida?

Respuesta

8

Deberá usar el SDK 2.3 porque ese atributo simplemente no se conoce en los SDK inferiores. Sin embargo, lo que puede hacer es configurar su SDK de destino en 2.1.

+3

Básicamente, lo que esto significa para HRJ: si no quiere usar el SDK 2.3, no puede usar estas nuevas funciones. Él tiene que usarlo como el SDK objetivo, pero luego no recibirá ninguna advertencia si accidentalmente usa API de nivel superior en un dispositivo 2.1 o 2.2. Creo que solo hay una salida: probar la aplicación en un emulador 2.1. – mreichelt

+1

@mreichelt ¡No te olvides de los documentos! Puedes filtrar por nivel de API para que sepas si tu 'genial API nueva' necesita algo de magia para funcionar en versiones anteriores de la plataforma. – smith324

+1

@ smith324 Por supuesto, olvidé mencionar eso. Pero a menudo es complicado leer la documentación cada vez que se ingresa un nuevo método o clase en el código Java. Creo que sería mucho mejor tener las advertencias apropiadas como HRJ también desea tener. Es por eso que ingresé una nueva solicitud de función: http://code.google.com/p/android/issues/detail?id=13905 ¡Puedes votar si te gusta! :-) – mreichelt

4

Parece que ese elemento solo es compatible con Android 2.3. Según los documentos here:

Nota: Android 2.3 (API nivel 9) introdujo un nuevo atributo para el elemento : xlargeScreens

Creo que significa que no se puede, en de hecho, use ese atributo a menos que esté compilando para Android 2.3.

0

Esto funcionó para mí como un encanto.

<supports-screens 
    android:largestWidthLimitDp="320" 
    android:smallScreens="true" 
    android:normalScreens="true" 
    android:largeScreens="true"   
    android:xlargeScreens="true"/> 

Consulte here para obtener más ayuda.

Cuestiones relacionadas