Lint me advierte sobre los accesos a la API que no son compatibles con todas las versiones, pero ¿funciona en todas partes?

Lint me está dando este error una buena cantidad de veces:

"match_parent" requires API level 8 (current min is 4), use "fill_parent" instead

entiendo el error Estoy usando match_parent en todos los diseños XML que usa mi aplicación y nunca uso fill_parent porque está en desuso. Sin embargo, como puede comprender por el error anterior, mi minSdkVersion es 4 y match_parent solo está disponible el 8.

El caso es que ejecuté mi aplicación en un emulador de Cupcake y la aplicación funciona bien. ¿Por qué? ¿No debería fallar o algo así?

¿Cuál es la forma correcta de solucionar este problema? Ignorar este error de Lint específico para todos los archivos XML o simplemente volver a colocarlo. fill_parent ¿En todas partes?

preguntado el 03 de mayo de 12 a las 12:05

definitivamente usar fill_parent si quiere admitir desde API v4 -

1 Respuestas

¿Por qué?

Porque tienen el mismo valor numérico, y el valor es lo que termina en el archivo APK, no el símbolo.

¿Cuál es la forma correcta de solucionar este problema, ignorar este error de Lint específico para todos los archivos XML o simplemente volver a colocar fill_parent en todas partes?

Para las advertencias de pelusa donde sabe que está usando las cosas correctamente, puede agregue anotaciones en Java (y marcadores similares en XML) lo que indica que sabe lo que está haciendo, y la pelusa ya no se quejará.

contestado el 03 de mayo de 12 a las 12:05

Bien, me olvidé de eso, son solo valores numéricos. Sí, sé lo de las anotaciones. Pero eso hará que el XML sea realmente grande y confuso, los uso en todas partes. Cambié el nombre de todos ellos a match_parent porque tenía algunas advertencias de "obsolescencia" en el XML. Devolví algunos de los atributos a fill_parent y parece que ahora no recibo esas advertencias. Tal vez algo cambió en ADT y cómo manejan esto... - rfgamaral

@RicardoAmaral: Oh, en este caso particular, no tiene nada de malo usar fill_parent. El equipo central de Android pensó match_parent era una descripción más precisa... que todavía no entiendo. Estaba tratando de ser un poco más general en mi respuesta, y me disculpo por cualquier confusión. - CommonsWare

Pensé que sí, pero como dije, los cambié todos de fill_parent a match_parent debido a las advertencias de desaprobación. Que ya no veo y Lint me advierte sobre el uso match_parent así que también podría revertirlos a todos. Gracias. - rfgamaral

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.