Constraintlayout

相対位置を使用して、ウィジェットの位置とサイズを柔軟に調整します。

androidx.constraintlayout グループ内のすべてのアーティファクトのリストを以下に示します。

アーティファクト 現在の安定版リリース 次のリリース候補 ベータ版リリース アルファ版リリース
constraintlayout 2.0.4 - 2.1.0-beta02 -
constraintlayout-compose - - - 1.0.0-alpha07
このライブラリの最終更新日: 2021 年 5 月 18 日

依存関係の宣言

ConstraintLayout への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    implementation "androidx.constraintlayout:constraintlayout:2.0.4"
    // To use constraintlayout in compose
    implementation "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07"
}

Kotlin

dependencies {
    implementation("androidx.constraintlayout:constraintlayout:2.0.4")
}

依存関係について詳しくは、ビルド依存関係の追加をご覧ください。

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

ConstraintLayout-compose 1.0

ConstraintLayout-compose 1.0 では、Jetpack Compose に ConstraintLayout 機能が提供されます。

バージョン 1.0.0-alpha07

2021 年 5 月 18 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07 がリリースされました。

  • Compose バージョン 1.0.0-beta07 との互換性を確保するために更新しました。

バージョン 1.0.0-alpha06

2021 年 5 月 4 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06 がリリースされました。

  • Compose の最適化: Constraintlayout インライン コンポーザブル(#193)
  • Compose で再測定を最小限に抑える(#210)

バージョン 1.0.0-alpha05

2021 年 3 月 15 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05 がリリースされました。

  • 最適化エンジンへの修正が含まれています(b/182657720
  • optimizationLevel パラメータを ConstraintLayout コンポーザブルに追加しました

バージョン 1.0.0-alpha04

2021 年 3 月 11 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04 がリリースされました。

最新の constraintlayout-core エンジンを使用するように更新しました

バージョン 1.0.0-alpha03

2021 年 2 月 24 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03 がリリースされました。

Jetpack Compose beta01 リリースのアップデートをリリースしました

バージョン 1.0.0-alpha02

2021 年 2 月 10 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02 がリリースされました。

Jetpack Compose alpha12 リリースのアップデートをリリースしました

バージョン 1.0.0-alpha01

2021 年 2 月 2 日

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 がリリースされました。

ライブラリの最初のリリース。制約を表すためのインラインと外部 DSL を提供します。

バージョン 2.1

ConstraintLayout 2.1.0 では、MotionLayout や新しいヘルパー(カルーセルなど)の機能がさらに充実しています。

バージョン 2.1.0-beta02

2021 年 5 月 4 日

androidx.constraintlayout:constraintlayout:2.1.0-beta02 がリリースされました。

MotionLayout の新機能:

  • バネ(剛性、減衰性、質量など)や未完成を含む OnSwipe の追加機能
  • jumpToState 機能
  • Down をタップすると 100 まで再生され、Up をタップすると 0 まで巻き戻しされる ViewTransition downUp モード

以下のさまざまな修正を行いました。

  • 垂直方向のスクロールに関する MotionLayout の問題を修正(#173)
  • ネストされた MotionLayout に関するパフォーマンスの改善(#189)
  • MotionLayout での NestedScrollView による高速遷移(#189)
  • MotionLayout の ConstraintSet を削除(#189)
  • MotionLayout での downUp ViewTransition のサポート(#190)
  • ドローアブルを再利用する際の ImageFilter の修正(#192)
  • MotionLayout にバネのサポートを追加(#199)
  • CircularFlow のパフォーマンスの改善(#200)
  • 派生制約 / 制約のオーバーライドの修正(#212)

バージョン 2.1.0-beta01

2021 年 3 月 11 日

androidx.constraintlayout:constraintlayout:2.1.0-beta01 がリリースされました。

ConstraintLayout

android:layout_width と android:layout_height が、互換性の問題が原因で再び任意ではなくなりました。

MotionLayout

  • Transition での onSwipe と onClick の挿入と削除に対するプログラム サポート
  • 画面の回転による Transition の試験運用版でのサポート
  • Transitions に対する duration 引数のサポート
  • ブール値である customAttribute または Reference のサポート強化

ヘルパー

  • Carousel の特定のアイテムに直接アニメーション化またはジャンプする方法を追加しました
  • 新しい CircularFlow ヘルパー

このリリースに関する追加情報については、こちらクローズされたバグをご覧ください。

バージョン 2.1.0-alpha2

2020 年 12 月 17 日

androidx.constraintlayout:constraintlayout:2.1.0-alpha2 がリリースされました。

この第 2 アルファ版ではいくつかの新機能が追加されています。

ConstraintLayout

  • android:layout_width と android:layout_height がオプションになり、wrap_content がデフォルトの動作になりました。
  • ディメンションの制約を表現する、新しい layout_constraintWidth 属性と layout_constraintHeight 属性。
  • 制約の負のマージンをサポートします。
  • 上端のベースラインと下端の制約のベースラインをサポートします。
  • ベースライン マージンの制約をサポートします。
  • SharedValues を使用すると、外部の値を ConstraintLayout に挿入できます。

MotionLayout

  • オーバーシュート補完タイプ(antientate、overshot)をサポートします。
  • MotionHelper のサポートを強化しました。
  • ConstraintSet のアニメーション化のアップデートを MotionLayout updateStateAnimate(id,cset,duration); に追加しました。
  • 共有値ベースの ViewTransition。
  • scheduleTransitonTo を使用すると、移行を待ち行列に入れて、現在の移行の完了時に実行することができます。

ヘルパー

  • カルーセルで無限(ラップアラウンド)モードがサポートされるようになりました。
  • ReactiveGuide: SharedValue 変更時の自動配置のガイドライン。
  • MotionEffect: 特定の方向に動く参照対象ビューに Keyframe を挿入します。
  • MotionLabel - 1 行のテキストをアニメーション化するためのビュー。

このリリースに関する追加情報についてはこちらをご覧ください。

バージョン 2.1.0-alpha1

2020 年 11 月 19 日

androidx.constraintlayout:constraintlayout:2.1.0-alpha1 がリリースされました。

2.1 リリースの最初のアルファ版。次の機能のサポートが導入されています。

  • カスタム カルーセル ビューをビルドするためのカルーセル モーション ヘルパー。
  • MotionLayout シーンは、インクルードと制約のオーバーライドをサポートします。
  • MotionLayout により、さらに充実した回転(入力と出力)のサポートが追加されます。
  • MotionLayout により ViewTransition が追加され、制約セットのミューテーションのための単一ビュー遷移が可能になります。

このリリースに関する追加情報についてはこちらをご覧ください。

バージョン 2.0

ConstraintLayout 2.0 には、仮想レイアウトなどの新しいレイアウト機能と、ビューのアニメーションを簡単に作成できる新しい MotionLayout クラスが追加されています。

バージョン 2.0.4

2020 年 10 月 29 日

androidx.constraintlayout:constraintlayout:2.0.4 がリリースされました。

バグの修正

このリリースでは、実行時に子ビューを削除したときに発生する可能性のある NPE が修正されています。このバージョンに更新することをおすすめします。

クローズされた問題のリストは、こちらをご覧ください。

バージョン 2.0.3

2020 年 10 月 27 日

androidx.constraintlayout:constraintlayout:2.0.3 がリリースされました。

バグの修正

今回のリリースではいくつかの問題の修正を行いました。このバージョンに更新することをおすすめします。

  • Windows インセットの処理
  • 特定の状況におけるアスペクト比の処理
  • 一部の RTL レイアウトとのクラッシュ

クローズされた問題のリストは、こちらをご覧ください。

バージョン 2.0.2

2020 年 10 月 6 日

androidx.constraintlayout:constraintlayout:2.0.2 がリリースされました。

バグの修正

今回のリリースでは、パフォーマンスの改善といくつかの問題の修正を行いました。このバージョンに更新することをおすすめします。

  • 状況によっては、ConstraintLayout で view GONE の可視状態の処理が正しく行われない問題を修正
  • 状況によっては、ConstraintLayout でパッケージ化されたチェーンの処理が正しく行われない問題を修正
  • Flow の仮想レイアウト ヘルパーに対する API 15 のインフレーションの例外を修正
  • MotionLayout の limitsBoundsTo が破損していた問題を修正
  • 特定の状況(遷移のチェーン作成)で MotionLayout の jumpToEnd が破損していた問題を修正

クローズされた問題のリストは、こちらをご覧ください。

バージョン 2.0.1

2020 年 8 月 25 日

androidx.constraintlayout:constraintlayout:2.0.1 がリリースされました。

Android Studio で MotionEditor を使用できるようにするためのマイナー アップデートです。

バージョン 2.0.0

2020 年 8 月 21 日

androidx.constraintlayout:constraintlayout:2.0.0 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。

重要な修正:

  • MotionLayout Transition の遅延と TransitionListener の修正
  • ConstraintLayout のフローと障壁の修正

バージョン 2.0.0-rc1

2020 年 7 月 29 日

androidx.constraintlayout:constraintlayout:2.0.0-rc1 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。

重要な修正:

  • フローの修正
  • RecyclerView の修正(recyclerview 1.2.0 alpha 5 以降へのアップデートをおすすめします)
  • MotionLayout TransitionListener の修正
  • MotionLayout のメモリリークの修正

バージョン 2.0.0-beta8

2020 年 7 月 7 日

androidx.constraintlayout:constraintlayout:2.0.0-beta8 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。

重要な修正:

  • プレースホルダの動作
  • レイヤの表示と非表示
  • フロー、バリアの修正
  • TransitionListener の修正

バージョン 2.0.0-beta7

2020 年 6 月 12 日

androidx.constraintlayout:constraintlayout:2.0.0-beta7 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。

重要な修正:

  • MotionLayout でのスクロール ビューのネストの問題
  • MotionLayout での遷移リスナーの問題
  • MotionLayout でのメモリリーク
  • RecyclerView の問題
  • グループの公開設定
  • パディングの問題

バージョン 2.0.0-beta6

2020 年 5 月 13 日

androidx.constraintlayout:constraintlayout:2.0.0-beta6 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。重要な修正は、MotionLayout でのグループ可視性の処理と派生制約の問題です。

バージョン 2.0.0-beta5

2020 年 5 月 7 日

androidx.constraintlayout:constraintlayout:2.0.0-beta5 がリリースされました。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。

バージョン 2.0.0-beta4

2019 年 12 月 16 日

androidx.constraintlayout:constraintlayout:2.0.0-beta4 がリリースされました。

新機能

MotionLayout

Transition の新しい属性:

  • layoutDuringTransition: MotionLayout が遷移中に子の requestLayouts 呼び出しに対してどのように対応するかを設定できます。指定可能な値は {ignoreRequest、honorRequest} です。
  • pathMotionArc: 移動する要素がたどる軌跡に円弧を使用します。指定可能な値は {startVertical | startHorizontal | flip | none} です。

ConstraintSets の開始と終了を省略するだけで、デフォルトの遷移を定義できるようになりました。現在の開始または終了の状態に一致する既存の遷移が他にない場合は、デフォルトの遷移が使用されます。

バグの修正

クローズされた問題のリストは、こちらをご覧ください。