android - error - coordinatorlayout example
¿Disposición de la restricción frente a la disposición del coordinador? (3)
CoordinatorLayout es un FrameLayout superpoblado.
De forma predeterminada, si agrega varios elementos secundarios a un FrameLayout, se superpondrán entre sí. Un FrameLayout se debe usar con mayor frecuencia para mantener una única vista secundaria. El principal atractivo de CoordinatorLayout es su capacidad para coordinar las animaciones y las transiciones de las vistas dentro de él.
ConstraintLayout le permite crear diseños grandes y complejos con una jerarquía de vista plana (sin grupos de vista anidados). Es similar a RelativeLayout porque todas las vistas se presentan de acuerdo con las relaciones entre las vistas de hermanos y el diseño principal, pero es más flexible que RelativeLayout y más fácil de usar con el Editor de diseño de Android Studio.
¿Qué implementar RestraintLayout o CoordinatorLayout para un diseño de material adecuado en android?
Es posible que necesite usar tanto RestriccionesDeLiminación como CoordinatorLayout para crear una interfaz de usuario eficiente y animaciones de materiales.
¿Qué implementar: ConstraintLayout
o CoordinatorLayout
para el diseño de material adecuado en Android?
Parece que usas (casi) siempre un CoordinatorLayout
, y algunas veces usas un ConstraintLayout
dentro. Vea los siguientes recursos
El codelab en https://codelabs.developers.google.com/codelabs/material-design-style/index.html#3 solo usa un
CoordinatorLayout
El ejemplo de la aplicación android-sunflower ("que ilustra las mejores prácticas de desarrollo de Android") no usa ni para la actividad de nivel superior, pero usa ambos dentro de su
fragment_plant_detail.xml
, conConstraintLayout
dentro delCoordinatorLayout
:<layout ...> <data .../> <android.support.design.widget.CoordinatorLayout ...> <android.support.design.widget.AppBarLayout ...> <android.support.design.widget.CollapsingToolbarLayout ...> <ImageView... /> <android.support.v7.widget.Toolbar... /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView ...> <android.support.constraint.ConstraintLayout ...> <TextView.../> <TextView... /> </android.support.constraint.ConstraintLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.FloatingActionButton ... /> </android.support.design.widget.CoordinatorLayout> </layout>
CoordinatorLayout está destinado a ser el diseño de nivel superior de la actividad para administrar los Behaviors por ejemplo, interacciones y animaciones.
El objetivo principal de ConstraintLayout es proporcionar una forma conveniente de crear un diseño plano con varios elementos secundarios (RelativeLayout mucho más potente).
Por lo tanto, CoordinatorLayout debe administrar el comportamiento complejo (especialmente las animaciones) de los componentes de su actividad, y ConstraintLayout para la ubicación adecuada de los componentes (especialmente los elementos de la lista).