Respuestas:
LinearLayout
significa que puede alinear las vistas una por una (vertical / horizontalmente).
RelativeLayout
significa basado en la relación de puntos de vista de sus padres y otros puntos de vista.
ConstraintLayout
es similar a un RelativeLayout en el sentido de que usa relaciones para posicionar y ajustar widgets, pero tiene flexibilidad adicional y es más fácil de usar en el Editor de diseño.
WebView
para cargar páginas html, estáticas o dinámicas.
FrameLayout
Para cargar el niño uno encima del otro, como tarjetas dentro de un marco, podemos colocar uno encima de otro o en cualquier lugar dentro del marco.
en desuso: AbsoluteLayout
significa que debe indicar la posición exacta donde debería estar la vista.
Para obtener más información, consulte esta dirección https://developer.android.com/guide/topics/ui/declaring-layout#CommonLayouts
AbsoluteLayout
está en desuso por una razón; Si el contenido no encaja, arroja cosas al azar. Es mejor con LinearLayout
ay establecer todos sus rellenos en 0
.
FrameLayout está diseñado para bloquear un área en la pantalla para mostrar un solo elemento. En general, FrameLayout debe usarse para mantener una vista secundaria única, porque puede ser difícil organizar las vistas secundarias de una manera que sea escalable a diferentes tamaños de pantalla sin que los elementos secundarios se superpongan entre sí. Sin embargo, puede agregar varios elementos secundarios a FrameLayout y controlar su posición dentro de FrameLayout asignando gravedad a cada elemento secundario, utilizando el
android:layout_gravity
atributoLas vistas secundarias se dibujan en una pila, con el elemento secundario agregado más recientemente en la parte superior. El tamaño de FrameLayout es el tamaño de su elemento secundario más grande (más relleno), visible o no (si el elemento primario de FrameLayout lo permite).
Un RelativeLayout es una utilidad muy poderosa para diseñar una interfaz de usuario porque puede eliminar grupos de vistas anidadas y mantener su jerarquía de diseño plana, lo que mejora el rendimiento. Si se encuentra utilizando varios grupos LinearLayout anidados, puede reemplazarlos con un solo RelativeLayout.
(Documentos actuales aquí )
Un TableLayout consta de una serie de
TableRow
objetos, cada uno de los cuales define una fila (en realidad, puede tener otros elementos secundarios, que se explicarán a continuación). Los contenedores TableLayout no muestran líneas de borde para sus filas, columnas o celdas. Cada fila tiene cero o más celdas; cada celda puede contener un objeto View. La tabla tiene tantas columnas como la fila con más celdas. Una tabla puede dejar celdas vacías. Las celdas pueden abarcar columnas, como pueden hacerlo en HTML.El ancho de una columna está definido por la fila con la celda más ancha en esa columna.
Nota : El diseño absoluto está en desuso.
LinearLayout: un diseño que organiza a sus hijos en una sola fila horizontal o vertical. Crea una barra de desplazamiento si la longitud de la ventana excede la longitud de la pantalla. Esto significa que puede alinear las vistas una por una (vertical / horizontalmente).
RelativeLayout: Esto le permite especificar la ubicación de los objetos secundarios entre sí (niño A a la izquierda del niño B) o al padre (alineado a la parte superior del padre). Se basa en la relación de puntos de vista de sus padres y otros puntos de vista.
WebView: para cargar páginas html, estáticas o dinámicas.
Para obtener más información, consulte este enlace: http://developer.android.com/guide/topics/ui/layout-objects.html
LinearLayout : en LinearLayout, las vistas se organizan en orientación vertical u horizontal.
RelativeLayout : RelativeLayout es mucho más complejo que LinearLayout, por lo tanto, proporciona muchas más funcionalidades. Las vistas se colocan, como su nombre indica, una respecto de la otra.
FrameLayout : se comporta como un solo objeto y sus vistas secundarias se superponen entre sí. FrameLayout toma el tamaño de acuerdo con el elemento secundario más grande.
Diseño del coordinador : este es el ViewGroup más poderoso introducido en la biblioteca de soporte de Android. Se comporta como FrameLayout y tiene muchas funcionalidades para coordinar entre sus vistas secundarias, por ejemplo, botón flotante y snackbar, barra de herramientas con vista desplazable.
Gran explicación aquí:
https://www.cuelogic.com/blog/using-framelayout-for-designing-xml-layouts-in-android
LinearLayout organiza los elementos uno al lado del otro, ya sea horizontal o verticalmente.
RelativeLayout lo ayuda a organizar sus elementos de la interfaz de usuario según reglas específicas. Puede especificar reglas como: alinear esto con el borde izquierdo del padre, colocarlo a la izquierda / derecha de estos elementos, etc.
AbsoluteLayout es para un posicionamiento absoluto, es decir, puede especificar coordenadas exactas donde debe ir la vista.
FrameLayout permite ubicaciones de vistas a lo largo del eje Z. Eso significa que puede apilar sus elementos de vista uno encima del otro.