ConstraintLayout 1.0 is now available
Wednesday, February 22, 2017
After months of intensive development, we are delighted to announce the 1.0 release of the ConstraintLayout library. It's available as a small unbundled library, in the Android Studio SDK Manager (under the "Support Repository" section), compatible with API level 9 (Gingerbread and above). We recommend updating to this version, particularly if used in production.
Note: with Android Studio 2.3 reaching release candidate status, we also encourage people to switch to it for editing layouts (ConstraintLayout included). Many improvements have been made since 2.2, providing a smoother experience.
The ConstraintLayout library allows you to create complex layouts easily, avoiding deep nested hierarchies and providing many powerful features for designing UIs:
Note: with Android Studio 2.3 reaching release candidate status, we also encourage people to switch to it for editing layouts (ConstraintLayout included). Many improvements have been made since 2.2, providing a smoother experience.
The ConstraintLayout library allows you to create complex layouts easily, avoiding deep nested hierarchies and providing many powerful features for designing UIs:
- Relative positioning of widgets to parent or siblings
- Centering positioning and bias control
- Flexible size control (min/max/wrap/constrained)
- Per axis group behavior (chains, weights)
- Advanced visibility behavior (gone handling and margins)
- Horizontal and Vertical virtual guidelines (fixed positions or percentage-based)
- Aspect Ratio support
- Advanced API to set constraints programmatically, allowing easy animations between layouts
A code lab is available as an introduction to ConstraintLayout as well as a developer guide. A complete online documentation is also available. Many excellent tutorials have also been created by the developers’ community; you can find them on YouTube, Medium, or your favorite search engine.
Changes since beta5: bug fixes related to wrap_content, support for MEASURE_STATE_TOO_SMALL.