2011-09-30 15 views
8

¿Cuál fue la razón detrás de la introducción de match_parent y la desaprobación de fill_parent ya que ambos significan lo mismo. ¿este cambio no será un obstáculo para la compatibilidad con versiones anteriores?Android fill_parent to match_parent

+0

Siempre me he preguntado acerca de esto también. De hecho, creo que 'fill_parent' representa el significado mejor que' match_parent'. – inazaruk

Respuesta

10

El uso de match_parent en lugar de fill_parent NO hará que el APK generado no se pueda ejecutar en versiones anteriores porque en la APK generada la coincidencia de match_parent y fill_parent será reemplazada por su valor constante correspondiente, que es el mismo en este caso (ambos son -1), por lo que la misma APK también se puede ejecutar en versiones anteriores de la plataforma Android.

Pero al compilar el código si cambia a una versión anterior (versión 7 o inferior), entonces obtendrá un error de compilación (ya que match_parent no está definido en la versión 7 o inferior).

4

Android Doc dice:

FILL_PARENT (MATCH_PARENT renombrado en la API de nivel 8 y superior), lo que significa que la vista quiere ser tan grande como su padre (el relleno menos)

fill_parent: La view debe ser tan grande como su padre (menos relleno). Esta constante está en desuso desde el nivel 8 de la API y se sustituye por por match_parent.

So Son lo mismo que sus valores son ambos -1. Pero si te preocupa la compatibilidad con versiones anteriores, puedes ir aquí: platfrom version

Esto te da una mejor idea de cuándo deberías cambiar todo tu fill_parent por match_parent. a partir de ahora, parece que el 50% de las personas están usando API Nivel 8 o superior. Entonces depende de ti cambiarlo.

+0

Gracias por la respuesta, pero mi pregunta fue por qué se realizó este cambio y no cómo llevarse bien con él. – 1O1

+0

Lo siento, la única razón por la que se me ocurre es que FILL_PARENT puede significar que llenes la vista secundaria a su vista principal en el mismo tamaño y ubicación (x, y). Pero el significado real de FILL_PARENT es que el tamaño (ancho o alto) es el mismo que el elemento principal, no la ubicación (x, y), por lo que decidieron cambiar a MATCH_PARENT para obtener una aclaración al respecto. Pero no soy yo quien cambió el nombre de esto, solo adivine razonablemente. :) –

Cuestiones relacionadas