Constraintlayout

Mengubah posisi dan ukuran widget secara fleksibel dengan posisi relatif.

Tabel ini mencantumkan semua artefak dalam grup androidx.constraintlayout.

Artefak Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
constraintlayout 2.1.4 - 2.2.0-beta01 -
constraintlayout-compose 1.0.1 - 1.1.0-beta01 -
constraintlayout-core 1.0.4 - 1.1.0-beta01 -

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.2.0-beta01"
    // To use constraintlayout in compose
    implementation "androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01"
}

Kotlin

dependencies {
    implementation("androidx.constraintlayout:constraintlayout:2.2.0-beta01")
    // To use constraintlayout in compose
    implementation("androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01")
}

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, dan ConstraintLayout-Core 1.1

Versi 1.1.0-beta01

4 September 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01, dan androidx.constraintlayout:constraintlayout-core:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit ini.

Versi 1.1.0-alpha14

7 Agustus 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14, dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14 dirilis. Versi 1.1.0-alpha14 berisi commit ini.

Perubahan API

  • Tanda kini disediakan satu per satu melalui objek pendamping dan dapat digabungkan dengan operator or. (I9df53)
  • createRow &disederhanakan Helper createColumn. Memperbaiki nama parameter dan dokumentasi createGrid untuk klarifikasi. (Iebc92)
  • Menyederhanakan animateChanges API di ConstraintLayout agar hanya memerlukan AnimationSpec non-null. onIncomingConstraints di InvalidationStrategy sekarang menjadi lambda reguler. Mengganti nama fixedWidthRate menjadi shouldInvalidateOnFixedWith, sama untuk varian Tinggi. (Ie59cd, b/332898040, b/336370035)
  • Sumber NestedScroll Drag dan Fling diganti dengan UserInput dan SideEffect untuk mengakomodasi definisi yang diperluas dari sumber ini yang sekarang mencakup animasi (Efek Samping) serta Roda Mouse dan Keyboard (UserInput). (I40579)

Versi 1.1.0-alpha13

4 Oktober 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13, dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13 dirilis tanpa perubahan. Versi 1.1.0-alpha13 berisi commit ini.

  • Rilis ini memungkinkan library androidx.constraintlayout kompatibel dengan ABI dengan rilis Compose terbaru.

Versi 1.1.0-alpha12

9 Agustus 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12, dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12 dirilis. Versi 1.1.0-alpha12 berisi commit ini.

Perubahan API

  • Menambahkan LayoutScopeMarker ke DSL Transisi. (If54ce)

Versi 1.1.0-alpha11

26 Juli 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11, dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 dirilis. Versi 1.1.0-alpha11 berisi commit ini.

Fitur Baru

  • Anda kini dapat menyediakan InvalidationStrategy untuk mengoptimalkan pembatalan validasi di MotionLayout. Yang biasanya akan menjadi sumber penurunan performa. (Iada0c)
  • Sekarang Anda dapat menggunakan animateChanges = true saat menggunakan ConstraintLayout dengan DSL Pengubah inline (Modifier.constrainAs). Setiap kali perubahan pada batasan dilakukan, ConstraintLayout akan otomatis dianimasikan ke status baru tersebut. (I9abf1)
  • Mengaktifkan fungsi untuk limitBoundsTo di OnSwipe. (I56522)

Perubahan API

  • Mengganti nama TransitionScope.staggered menjadi TransitionScope.maxStaggerDelay. (I0fd2d)

Perbaikan Bug

  • Perbaikan parameter dragScale dari OnSwipe yang tidak berfungsi. (8bef26)
  • Memperbaiki customColor di MotionScene yang tidak berfungsi secara baik dengan warna transparan. (81b2ac)
  • Memperbaiki OnSwipe yang tidak diumumkan dengan benar saat berhenti, juga memperbaiki penghitungan kecepatan awal untuk touchUp. (Ia5f6f)
  • Memperbarui KDoc untuk Composable ConstraintLayout dan Constraintset. (3bfe63)

Versi 1.1.0-alpha10

24 Mei 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10, dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10 dirilis. Versi 1.1.0-alpha10 berisi commit ini.

Perubahan API

  • API MotionLayout tidak lagi bersifat eksperimental, ini mewakili kumpulan awal API stabil untuk MotionLayout. (I288f4)
  • MotionLayoutState dihapus. Id3ac1
  • Sekarang Anda dapat menggunakan DebugFlags untuk proses debug visual: DebugFlags(showBounds = true). (Ic714b)
  • Variabel ekstensi Dp.asDimension telah diubah menjadi metode: Dp.asDimension(). (I2d6ef)
  • Sekarang bertahap didukung di DSL MotionLayout, tentukan penundaan maksimum dengan TransitionScope.staggered, Anda juga dapat menggunakan ConstrainScope.staggeredWeight (dalam MotionSceneScope) untuk mendapatkan urutan bertahap kustom. (I70275)
  • Dua perubahan dibuat untuk Grid helper: 1. paddingLeft dan paddingRight menjadi paddingStart dan paddingEnd, serta 2. memperbarui format gridSpans dan gridSkip ke array objek Span dan Skip agar lebih struktural. (Idd1eb)

Versi 1.1.0-alpha09

22 Maret 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha09 dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha09 dirilis. Versi 1.1.0-alpha09 berisi commit ini.

Perubahan API

  • Modifier.intermediateLayout kini tidak memerlukan LookaheadScope eksplisit. Blok pengukuran di intermediateLayout memiliki IntermediateMeasureScope sebagai penerima, yang menyediakan CoroutineScope, LookaheadScope, dan MeasureScope yang mudah.
  • LookaheadLayout telah diganti dengan LookaheadScope, yang tidak lagi menjadi Tata Letak. Hal ini memungkinkan konten turunan di LookaheadScope dikontrol langsung oleh MeasurePolicy induk. (Ibe2e5)
  • Easing.Cubic() kini dapat mengambil parameter overshoot. (I2d826)

Versi 1.1.0-alpha08

8 Maret 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha08 dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha08 dirilis. Versi 1.1.0-alpha08 berisi commit ini.

Fitur Baru

  • Pemeriksaan lint ditambahkan untuk menyarankan penggunaan Dimension.percent(1f) dan LayoutReference.withChainParams() jika pola umum dapat menyebabkan perilaku yang tidak dapat diprediksi. (I62eb0, I03060)

Perubahan API

  • Aktifkan tanda ReverseSpanDirection dan SpansOrderFirst untuk Bantuan Petak di Compose.
    1. ReverseSpanDirection: membalikkan spesifikasi lebar dan tinggi untuk span/lewat.
    2. SpansOrderFirst: span akan mengikuti urutan widget. (I6ad50)
  • Gunakan Modifier.onStartEndBoundsChanged(...) untuk mendapatkan batas lokal Composable di MotionLayout yang tidak terpengaruh oleh animasi. Berguna untuk interaksi UI apa pun yang memerlukan informasi tata letak yang juga dapat memicu animasi seperti DragAndDrop. (I6b5f9)
  • Mengaktifkan lewati dan span Bantuan Grid di Compose (I917b6)

Perbaikan Bug

  • Properti terjemahan tetap yang tidak menerapkan nilai yang diharapkan. (I961cd)

Versi 1.1.0-alpha07

8 Februari 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha07 dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha07 dirilis. Versi 1.1.0-alpha07 berisi commit ini.

Fitur Baru

  • Menambahkan API baru untuk mengaktifkan Grid Helper di Compose menggunakan DSL (I1143b)

Perbaikan Bug

  • Memperbaiki Wrap.Chain untuk Flow yang tidak menata letak dengan benar ke parameter maxElement yang diberikan. (e1f2ed3)
  • Memperbaiki start ConstraintSet yang tidak diupdate saat mengubah Transisi melalui MotionLayout(motionScene: MotionScene, progress: Float, transitionName: String). (17ffff1)
  • Memperbaiki ConstraintSet yang tidak mencerminkan beberapa perubahan saat mewarisi batasan melalui ConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit).(740804b)

Versi 1.1.0-alpha06

25 Januari 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha06 dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha06 dirilis. Versi 1.1.0-alpha06 berisi commit ini.

Fitur Baru

  • Menambahkan API baru untuk mengaktifkan Grid Helper di Compose dengan representasi JSON yang memungkinkan composable ditempatkan dalam petak 2D. (I968ad)

Perubahan API

  • Menambahkan dukungan untuk mode lengkungan ke atas dan lengkungan ke bawah Arc.Above dan Arc.Below mode lengkungan arah independen ke MotionLayout (I184a9)
  • Sekarang Anda dapat membatasi anchor dasar ke anchor bagian atas/bawah dan sebaliknya. (I54628)
  • Mengganti nama MotionLayoutScope#motionProperties (termasuk turunan) menjadi MotionLayoutScope#customProperties. Hal ini harus konsisten seperti saat menetapkan properti khusus. (Ib34c9)
  • Sekarang Anda dapat membuat beberapa referensi di ConstraintSet dan MotionScene: val (box, text, button) = createRefsFor("box", "text","button"). Menerapkan batasan ke beberapa elemen dengan constrain(box, button, text). Dalam ConstrainScope, Anda kini dapat menetapkan dimensi tetap secara intuitif dengan Dp.asDimension: width = 10.dp.asDimension. (I021ec, Ia0960)
  • Metode MotionScene() dan Transition() kini menjadi fungsi non-Composable. Objek dari fungsi ini (termasuk ConstraintSet) kini seharusnya sudah dapat dibandingkan satu sama lain dengan tepat. animateChanges = true di ConstraintLayout sekarang hanya dapat digunakan dengan satu referensi ConstraintSet, selama propertinya berubah pada rekomposisi. (I7d22e)

Perbaikan Bug

  • Memperbaiki masalah saat ConstraintLayout selalu memicu rekomposisi tambahan yang tidak perlu saat helper diubah. (Id83ad, b/222093277)
  • Memperbaiki perilaku saat menggunakan Intrinsik dengan ConstraintLayout & MotionLayout. (I487ae, b/220527863)
  • Memperbaiki masalah saat konten yang berubah tidak dapat diukur ulang. (Ibfe8a, b/219091179)

Versi 1.1.0-alpha05

7 Desember 2022

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha05 dan androidx.constraintlayout:constraintlayout-core:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.

Fitur Baru

  • Mendukung KeyAttributes kustom di DSL (b94e748)
  • Properti bias platform di ConstrainScope (32625d0)
  • Mendukung parameter kustom dalam rantai (72a2e9e)
  • Menambahkan pengujian Macrobenchmark untuk MotionLayout di Compose (36f43bc)
  • Untuk informasi selengkapnya tentang perubahan dalam rilis sebelumnya di Compose, lihat halaman wiki

Perubahan API

  • Membalik parameter addConstraintSet dan addTransition (152facc)

Perbaikan Bug

  • Memperbaiki Rantai Horizontal (ed5f56e)

Versi 1.1.0-alpha01

20 Mei 2022

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

Perlu diperhatikan bahwa MotionLayout API bersifat eksperimental dan memerlukan keikutsertaan.

Untuk informasi selengkapnya, lihat Yang baru di Compose 1.1.0-alpha01 di GitHub.

Versi 2.2

Versi 2.2.0-beta01

4 September 2024

androidx.constraintlayout:constraintlayout:2.2.0-beta01 dirilis. Versi 2.2.0-beta01 berisi commit ini.

Versi 2.2.0-alpha14

7 Agustus 2024

androidx.constraintlayout:constraintlayout:2.2.0-alpha14 dirilis. Versi 2.2.0-alpha14 berisi commit ini.

Versi 2.2.0-alpha13

4 Oktober 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha13 dirilis tanpa perubahan. Versi 2.2.0-alpha13 berisi commit ini.

Versi 2.2.0-alpha12

9 Agustus 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha12 dirilis. Versi 2.2.0-alpha12 berisi commit ini.

Versi 2.2.0-alpha11

26 Juli 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha11 dirilis. Versi 2.2.0-alpha11 berisi commit ini.

Perubahan API

  • Menambahkan metode penyetel untuk memungkinkan developer menetapkan nilai mInfiniteCarousel secara terprogram (I0a8ca)

Versi 2.2.0-alpha10

24 Mei 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha10 dirilis. Versi 2.2.0-alpha10 berisi commit ini.

Perbaikan Bug

  • Perbaiki link dokumen MotionLayout yang rusak. (51cbe88)

Versi 2.2.0-alpha09

22 Maret 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha09 dirilis. Versi 2.2.0-alpha09 berisi commit ini.

Versi 2.2.0-alpha08

8 Maret 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha08 dirilis. Versi 2.2.0-alpha08 berisi commit ini.

Versi 2.2.0-alpha07

8 Februari 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha07 dirilis. Versi 2.2.0-alpha07 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah konten halaman ConstraintLayout yang tidak ada. (I82e25)

Versi 2.2.0-alpha05

7 Desember 2022

androidx.constraintlayout:constraintlayout:2.2.0-alpha05 dirilis. Versi 2.2.0-alpha05 berisi commit ini.

  • Untuk informasi selengkapnya tentang perubahan dalam rilis sebelumnya, lihat halaman wiki GitHub

Perbaikan Bug

  • Memperbaiki kebocoran di View Carousel (eb67b82)

Versi 2.2.0-alpha01

20 Mei 2022

androidx.constraintlayout:constraintlayout:2.2.0-alpha01 dirilis.

Menyertakan pratinjau helper Grid baru.

Untuk informasi selengkapnya, lihat Yang baru di 2.2.0-alpha01 di GitHub.

ConstraintLayout-compose 1.0

ConstraintLayout-compose 1.0 menyediakan fungsi ConstraintLayout di Jetpack Compose.

Versi 1.0.1

20 Mei 2022

androidx.constraintlayout:constraintlayout-compose:1.0.1 dirilis.

Perlu diperhatikan bahwa MotionLayout API bersifat eksperimental dan memerlukan keikutsertaan.

Untuk mengetahui informasi selengkapnya, lihat Yang baru di Compose 1.0.1 di GitHub.

Versi 1.0.0

13 Januari 2022

androidx.constraintlayout:constraintlayout-compose:1.0.0 dirilis.

Perlu diperhatikan bahwa MotionLayout API kini bersifat eksperimental dan memerlukan keikutsertaan.

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

Versi 1.0.0-rc02

16 November 2021

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

Untuk informasi selengkapnya, lihat artikel GitHub Yang Baru di 1.0 (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 composable Constraintlayout (#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.4

20 Mei 2022

androidx.constraintlayout:constraintlayout:2.1.4 dirilis.

Untuk informasi selengkapnya, lihat Yang baru di 2.1.4 di GitHub.

Versi 2.1.3

13 Januari 2022

androidx.constraintlayout:constraintlayout:2.1.3 dirilis.

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

Versi 2.1.2

16 November 2021

androidx.constraintlayout:constraintlayout:2.1.2 dirilis.

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

Versi 2.1.1

27 September 2021

androidx.constraintlayout:constraintlayout:2.1.1 dirilis.

Ini adalah rilis final untuk 2.1.1.

Untuk mengetahui 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 mengetahui 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 mengetahui 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