Constraintlayout

Mengubah posisi dan ukuran widget secara fleksibel dengan posisi relatif.

Tabel ini mencantumkan semua artefak dalam grup androidx.constraintlayout.

Artefak Rilis Stabil Saat Ini Kandidat Rilis Berikutnya Rilis Beta Rilis Alfa
constraintlayout 2.1.1 - - -
constraintlayout-compose - 1.0.0-rc01 - -
Library ini terakhir diperbarui pada: 27 September 2021

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada ConstraintLayout, Anda harus menambahkan repositori Maven Google ke project. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

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

Kotlin

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

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

ConstraintLayout-compose 1.0

ConstraintLayout-compose 1.0 menyediakan fungsi ConstraintLayout di Jetpack Compose.

Versi 1.0.0-rc01

27 September 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01 dirilis.

Rilis ini merupakan versi beta kedua. Fitur ini dianggap sebagai fitur lengkap, yang menyediakan ConstraintLayout dan MotionLayout untuk Compose.

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 1.0 (Compose).

Versi 1.0.0-beta02

30 Juli 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02 dirilis.

Rilis ini merupakan versi beta kedua. Fitur ini dianggap sebagai fitur lengkap, yang menyediakan ConstraintLayout dan MotionLayout untuk Compose.

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 1.0 (Compose).

Versi 1.0.0-beta01

22 Juli 2020

androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01 dirilis.

Rilis ini merupakan versi beta pertama. Fitur ini dianggap sebagai fitur lengkap, yang menyediakan ConstraintLayout dan MotionLayout untuk Compose.

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 1.0 (Compose).

Versi 1.0.0-alpha07

18 Mei 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07 dirilis.

  • Diupdate agar kompatibel dengan Compose versi 1.0.0-beta07.

Versi 1.0.0-alpha06

4 Mei 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06 dirilis.

  • Pengoptimalan Compose: Fungsi inline Constraintlayout yang dapat dikomposisi (#193)
  • Meminimalkan pengukuran ulang di Compose (#210)

Versi 1.0.0-alpha05

15 Maret 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05 dirilis.

  • menyertakan perbaikan untuk mesin pengoptimalan (b/182657720)
  • menambahkan parameter optimizationLevel ke komponen ConstraintLayout

Versi 1.0.0-alpha04

11 Maret 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04 dirilis.

Perbarui untuk menggunakan mesin constraintlayout-core terbaru

Versi 1.0.0-alpha03

24 Februari 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03 dirilis.

Update rilis untuk rilis Jetpack Compose beta01

Versi 1.0.0-alpha02

10 Februari 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02 dirilis.

Update rilis untuk rilis Jetpack Compose alpha12

Versi 1.0.0-alpha01

2 Februari 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 dirilis.

Rilis pertama library ini, yang menyediakan DSL inline dan eksternal untuk menyatakan batasan.

Versi 2.1

ConstraintLayout 2.1.0 menyediakan fitur yang lebih kaya di MotionLayout dan helper baru (Carousel, dsb.)

Versi 2.1.1

27 September 2021

androidx.constraintlayout:constraintlayout:2.1.1 dirilis.

Ini adalah rilis final untuk 2.1.1.

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 2.1.

Versi 2.1.0

30 Juli 2021

androidx.constraintlayout:constraintlayout:2.1.0 dirilis.

Ini adalah rilis final untuk 2.1.0.

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 2.1.

Versi 2.1.0-rc01

22 Juli 2020

androidx.constraintlayout:constraintlayout:2.1.0-rc01 dirilis.

Ini adalah kandidat rilis untuk 2.1.0 yang memberikan peningkatan dan perbaikan minor dari versi beta terakhir. Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 2.1.

Versi 2.1.0-beta02

4 Mei 2021

androidx.constraintlayout:constraintlayout:2.1.0-beta02 dirilis.

Beberapa fitur baru di MotionLayout:

  • Perbaikan OnSwipe mencakup spring (kekakuan, redaman, massa, dsb.) & tidak pernah selesai
  • Fungsi jumpToState
  • Mode downUp ViewTransition yang saat menyentuh Bawah akan memutar ke 100 dan saat menyentuh Atas akan kembali ke 0

Berbagai perbaikan, terutama:

  • Memperbaiki masalah di MotionLayout terkait scroll vertikal (#173)
  • Peningkatan performa pada MotionLayout bertingkat (#189)
  • Transisi cepat dengan NestedScrollView di MotionLayout (#189)
  • ConstraintSet tidak ada lagi di MotionLayout (#189)
  • Mendukung downUp ViewTransitions di MotionLayout (#190)
  • Memperbaiki ImageFilter saat menggunakan kembali drawable (#192)
  • Menambahkan dukungan spring di MotionLayout (#199)
  • Peningkatan performa ke LingkaranFlow (#200)
  • Perbaikan pada kendala turunan/penggantian kendala (#212)

Versi 2.1.0-beta01

11 Maret 2021

androidx.constraintlayout:constraintlayout:2.1.0-beta01 dirilis.

ConstraintLayout

android:layout_width dan android:layout_height kembali menjadi non-opsional karena masalah kompatibilitas.

MotionLayout

  • Dukungan terprogram untuk memasukkan dan menghapus onSwipe dan onClick di Transitions
  • Dukungan Eksperimental untuk Transitions melalui rotasi layar
  • mendukung argumen durasi ke transisi
  • Dukungan yang lebih baik untuk customAttributes yang bersifat boolean atau Referensi

Helpers

  • menambahkan cara untuk menganimasikan atau melompat langsung ke item Carousel tertentu
  • helper CircularFlow baru

Lihat informasi tambahan tentang rilis ini di sini dan bug ditutup.

Versi 2.1.0-alpha2

17 Desember 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha2 dirilis.

Alfa kedua ini menambahkan beberapa fitur baru:

ConstraintLayout

  • android:layout_width dan android:layout_height kini bersifat opsional, dengan wrap_content sebagai perilaku default
  • new layout_constraintWidth dan layout_constraintHeight baru untuk mengekspresikan batasan dimensi
  • mendukung margin negatif untuk batasan
  • mendukung baseline ke atas dan baseline ke batasan bawah
  • mendukung batasan margin baseline
  • SharedValues memungkinkan nilai eksternal dimasukkan ke dalam ConstraintLayout

MotionLayout

  • Dukungan untuk interpolator overshoot (antisipasi, overshoot)
  • Dukungan MotionHelper yang disempurnakan
  • Menambahkan update animasi ConstraintSet ke MotionLayout updateStateAnimate(id,cset,duration);
  • ViewTransition berdasarkan nilai bersama
  • scheduleTransitonTo memungkinkan Anda memasukkan transisi ke antrean agar dapat berjalan pada penyelesaian transisi saat ini.

Helpers

  • Carousel kini mendukung mode tak terbatas (wrap-around)
  • ReactiveGuide : Panduan yang otomatis memosisikan dirinya saat SharedValue berubah
  • MotionEffect : memasukkan Keyframe ke tampilan referensi yang bergerak ke arah tertentu
  • MotionLabel - Tampilan untuk menganimasikan teks baris tunggal

Lihat informasi tambahan tentang rilis ini di sini.

Versi 2.1.0-alpha1

19 November 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha1 dirilis.

Alfa pertama dari rilis 2.1. Memperkenalkan dukungan untuk:

  • Helper gerakan carousel, untuk membuat tampilan carousel kustom
  • Adegan MotionLayout mendukung penggantian dan batasan
  • MotionLayout menambahkan dukungan yang lebih kaya untuk rotasi (input dan output)
  • MotionLayout menambahkan ViewTransitions yang memungkinkan transisi tampilan tunggal untuk mutasi kumpulan kendala

Lihat informasi tambahan tentang rilis ini di sini.

Versi 2.0

ConstraintLayout 2.0 menambahkan fitur baru untuk tata letak (tata letak virtual, dll.) dan class baru untuk menyederhanakan animasi tampilan, MotionLayout.

Versi 2.0.4

29 Oktober 2020

androidx.constraintlayout:constraintlayout:2.0.4 dirilis.

Perbaikan Bug

Rilis ini memperbaiki potensi NPE yang mungkin terjadi saat menghapus tampilan turunan di runtime. Sebaiknya update ke versi ini.

Lihat daftar masalah yang sudah ditutup di sini.

Versi 2.0.3

27 Oktober 2020

androidx.constraintlayout:constraintlayout:2.0.3 dirilis.

Perbaikan Bug

Rilis ini memperbaiki beberapa masalah. Sebaiknya update ke versi ini.

  • Penanganan inset Windows
  • Penanganan rasio dimensi dalam beberapa situasi
  • Error pada beberapa tata letak RTL

Lihat daftar masalah yang sudah ditutup di sini.

Versi 2.0.2

6 Oktober 2020

androidx.constraintlayout:constraintlayout:2.0.2 dirilis.

Perbaikan Bug

Rilis ini meningkatkan performa serta memperbaiki beberapa masalah. Sebaiknya update ke versi ini.

  • Penanganan tampilan visibilitas GONE di ConstraintLayout salah dalam beberapa situasi
  • Penanganan rantai paket di ConstraintLayout salah dalam beberapa situasi
  • Memperbaiki pengecualian inflate pada API 15 untuk helper tata letak virtual Flow
  • limitsBoundsTo rusak di MotionLayout
  • Fungsi lompat ke akhir rusak di MotionLayout dalam beberapa situasi (transisi rantai)

Lihat daftar masalah yang sudah ditutup di sini.

Versi 2.0.1

25 Agustus 2020

androidx.constraintlayout:constraintlayout:2.0.1 dirilis.

Ini adalah update minor yang memungkinkan penggunaan MotionEditor di Android Studio.

Versi 2.0.0

21 Agustus 2020

androidx.constraintlayout:constraintlayout:2.0.0 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini.

Perbaikan penting:

  • Penundaan MotionLayout Transition & perbaikan TransitionListener
  • Perbaikan alur & penghalang ConstraintLayout

Versi 2.0.0-rc1

29 Juli 2020

androidx.constraintlayout:constraintlayout:2.0.0-rc1 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini.

Perbaikan penting:

  • Perbaikan alur
  • Perbaikan RecyclerView (sebaiknya update ke recyclerview 1.2.0 alfa 5 atau yang lebih baru)
  • Perbaikan MotionLayout TransitionListener
  • Perbaikan kebocoran memori MotionLayout

Versi 2.0.0-beta8

7 Juli 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta8 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini.

Perbaikan penting:

  • Perilaku placeholder
  • Visibilitas lapisan
  • Perbaikan Alur, Penghalang
  • Perbaikan TransitionListener

Versi 2.0.0-beta7

12 Juni 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta7 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini.

Perbaikan penting:

  • Masalah tampilan scroll bertingkat di MotionLayout
  • Masalah pemroses transisi dengan MotionLayout
  • Kebocoran memori di MotionLayout
  • Masalah RecyclerView
  • Visibilitas grup
  • Masalah padding

Versi 2.0.0-beta6

13 Mei 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta6 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini. Perbaikan pentingnya adalah penanganan visibilitas grup dan masalah batasan turunan di MotionLayout.

Versi 2.0.0-beta5

7 Mei 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta5 dirilis.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini

Versi 2.0.0-beta4

16 Desember 2019

androidx.constraintlayout:constraintlayout:2.0.0-beta4 dirilis.

Fitur Baru

MotionLayout

Atribut baru dalam Transisi:

  • layoutDuringTransition : memungkinkan Anda mengonfigurasi reaksi MotionLayout terhadap panggilan requestLayouts turunan selama transisi. Nilai yang memungkinkan adalah {ignoreRequest, honorRequest}
  • pathMotionArc : jalur yang diambil oleh elemen yang bergerak akan menggunakan bentuk lengkungan. Nilai yang memungkinkan adalah {startVertical | startHorizontal | flip | none }

Transisi default sekarang dapat ditentukan, cukup dengan menghapus ConstraintSets awal dan akhir. Transisi default tersebut akan digunakan jika tidak ditemukan transisi lain untuk menyesuaikan keadaan awal/akhir saat ini.

Perbaikan Bug

Lihat daftar masalah yang sudah ditutup di sini