Saltar al contenido

¿Cuál es la diferencia entre fill_parent y wrap_content?

Este dilema se puede solucionar de variadas maneras, por lo tanto te mostramos la solución más completa en nuestra opinión.

Solución:

Cualquiera attribute se puede aplicar al tamaño horizontal o vertical de View (control visual). Se utiliza para establecer un tamaño de Vista o Diseños en función de su contenido o del tamaño de su diseño principal en lugar de especificar explícitamente una dimensión.

fill_parent (en desuso y renombrado MATCH_PARENT en API Nivel 8 y superior)

Establecer el diseño de un widget en fill_parent lo obligará a expandirse para ocupar tanto espacio como esté disponible dentro del elemento de diseño en el que se ha colocado. Fill.

Establecer un diseño o control de nivel superior en fill_parent obligará a que ocupe toda la pantalla.

wrap_content

Establecer el tamaño de una vista en wrap_content obligará a que se expanda solo lo suficiente para contener los valores (o controles secundarios) que contiene. Para los controles, como cuadros de texto (TextView) o imágenes (ImageView), esto ajustará el texto o la imagen que se muestra. Para los elementos de diseño, cambiará el tamaño del diseño para que se ajuste a los controles/diseños agregados como elementos secundarios.

Es más o menos el equivalente de configurar un control de formulario de Windows Autosize propiedad a True.

Documentación en línea

Hay algunos detalles en la documentación del código de Android aquí.

fill_parent (obsoleto) = match_parent

El borde de la vista secundaria se expande para coincidir con el borde de la vista principal.

wrap_content

El borde de la vista secundaria se ajusta perfectamente a su propio contenido.

Aquí hay algunas imágenes para que las cosas sean más claras. El verde y el rojo son TextViews. el blanco es un LinearLayout mostrando a través.

ingrese la descripción de la imagen aquí

Cada View (a TextViewun ImageViewa Buttonetc.) necesita configurar el width y el height de la vista En el archivo de diseño xml, podría verse así:

android:layout_width="wrap_content"
android:layout_height="match_parent"

Además de establecer el ancho y la altura para match_parent o wrap_contenttambién puede establecerlos en algún valor absoluto:

android:layout_width="100dp"
android:layout_height="200dp"

Sin embargo, generalmente eso no es tan bueno porque no es tan flexible para dispositivos de diferentes tamaños. Después de haber entendido wrap_content y match_parentlo siguiente que hay que aprender es layout_weight.

Ver también

  • ¿Qué significa android:layout_weight?
  • Diferencia entre el relleno y el margen de una vista
  • Gravedad vs diseño_gravedad

XML para las imágenes de arriba

Diseño lineal vertical




    

    

    


Diseño lineal horizontal




    

    

    


Nota

La explicación en esta respuesta asume que no hay margen ni relleno. Pero incluso si lo hay, el concepto básico sigue siendo el mismo. El borde/espaciado de la vista solo se ajusta por el valor del margen o el relleno.

  • fill_parent hará que el ancho o alto del elemento sea tan grande como el elemento principal, en otras palabras, el contenedor.

  • wrap_content hará que el ancho o la altura sean tan grandes como sea necesario para contener los elementos dentro de él.

Haga clic aquí para la referencia DOC de ANDROID

Te mostramos comentarios y calificaciones

Si te gustó nuestro trabajo, eres capaz de dejar una noticia acerca de qué te ha gustado de esta crónica.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *