Transisi

Menganimasikan gerakan di UI dengan tata letak awal dan akhir.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
11 Desember 2024 1.5.1 - - 1.6.0-alpha01

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Transition, Anda harus menambahkan repositori Maven Google ke project Anda. 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 {
    // Java language implementation
    implementation "androidx.transition:transition:1.5.1"
    // Kotlin
    implementation "androidx.transition:transition-ktx:1.5.1"
}

Kotlin

dependencies {
    // Java language implementation
    implementation("androidx.transition:transition:1.5.1")
    // Kotlin
    implementation("androidx.transition:transition-ktx:1.5.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.

Versi 1.6

Versi 1.6.0-alpha01

11 Desember 2024

androidx.transition:transition:1.6.0-alpha01 dan androidx.transition:transition-ktx:1.6.0-alpha01 dirilis. Versi 1.6.0-alpha01 berisi commit ini.

Fitur Baru

  • Transisi kini menetapkan induk yang tidak terhubung untuk ViewOverlays yang digunakan untuk menganimasikan transisinya. Hal ini memungkinkan resolusi pemilik melalui induk yang terpisah, yang berarti Anda kini dapat me-resolve ViewModels, siklus proses, dll. dengan benar selama transisi. (I10a16, b/340894487, b/287484338)

Perbaikan Bug

  • Library ini kini menggunakan anotasi nullness JSpecify, yang merupakan penggunaan jenis. Developer Kotlin harus menggunakan argumen compiler berikut untuk menerapkan penggunaan yang benar: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (I1f54e, b/326456246)
  • Menghapus garis besar manual akses ke API platform baru karena hal ini terjadi secara otomatis melalui pemodelan API saat menggunakan R8 dengan AGP 7.3 atau yang lebih baru (misalnya, R8 versi 3.3) dan untuk semua build saat menggunakan AGP 8.1 atau yang lebih baru (misalnya, D8 versi 8.1). Klien yang tidak menggunakan AGP disarankan untuk mengupdate ke D8 versi 8.1 atau yang lebih baru. Baca artikel ini untuk informasi selengkapnya. (Ia60e0, b/345472586)

Versi 1.5

Versi 1.5.1

24 Juli 2024

androidx.transition:transition:1.5.1 dan androidx.transition:transition-ktx:1.5.1 dirilis. Versi 1.5.1 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah saat panggilan ke animateToStart() atau animateToEnd() pada transisi yang dapat dicari akan diabaikan jika transisi tidak dimulai. (I44d96, b/338624457)

Versi 1.5.0

1 Mei 2024

androidx.transition:transition:1.5.0 dan androidx.transition:transition-ktx:1.5.0 dirilis. Versi 1.5.0 berisi commit ini.

Perubahan penting sejak versi 1.4.0

  • Transisi mendukung pencarian di API 34 dan yang lebih baru. API baru ditambahkan ke TransitionManager, controlDelayedTransition(), yang menampilkan TransitionSeekController yang memungkinkan pencarian Transition. Fungsi ini digunakan oleh Fragment 1.7.0 untuk secara otomatis mencari transisi saat menggunakan Gestur Kembali Prediktif.
  • Transisi memiliki metode baru, getRootTransition(), yang menampilkan Transisi yang berisi Transisi saat ini atau Transisi saat ini jika tidak dimuat oleh Transisi lainnya. Hal ini dapat berguna jika developer perlu memiliki pemroses untuk saat seluruh Transisi dimulai atau berakhir.
  • TransitionListeners kini memiliki pemroses onTransitionStart() dan onTransitionEnd() baru yang memungkinkan developer mengetahui apakah transisi dimulai atau berakhir secara terbalik atau tidak. Hal ini dapat menjadi penting untuk mengembangkan transisi yang dapat dicari yang memiliki TransitionListeners.

Versi 1.5.0-rc02

17 April 2024

androidx.transition:transition:1.5.0-rc02 dan androidx.transition:transition-ktx:1.5.0-rc02 dirilis. Versi 1.5.0-rc02 berisi commit ini.

Pembaruan Dependensi

  • Memperbarui dependensi Fragmen ke versi 1.7.0-rc02 yang memperbaiki bug yang menyebabkan error jika elemen bersama yang tidak dapat dicari ditambahkan ke transaksi saat semua transisi lainnya dapat dicari.

Versi 1.5.0-rc01

3 April 2024

androidx.transition:transition:1.5.0-rc01 dan androidx.transition:transition-ktx:1.5.0-rc01 dirilis. Versi 1.5.0-rc01 berisi commit ini.

Versi 1.5.0-beta01

20 Maret 2024

androidx.transition:transition:1.5.0-beta01 dan androidx.transition:transition-ktx:1.5.0-beta01 dirilis. Versi 1.5.0-beta01 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah di Fragment saat mengganggu transisi masuk dengan gestur kembali Prediktif akan menghancurkan tampilan yang masuk, yang berpotensi meninggalkan layar kosong. (Id3f22, b/319531491)

Versi 1.5.0-alpha06

10 Januari 2024

androidx.transition:transition:1.5.0-alpha06 dan androidx.transition:transition-ktx:1.5.0-alpha06 dirilis. Versi 1.5.0-alpha06 berisi commit ini.

Perbaikan Bug

  • SaatTransitionSeekController.animateToStart() digunakan, TransitionListeners yang ditambahkan kini akan memanggil onTransitionEnd() setelah animateToStart() diberi Runnable. (Ic6a55, b/307624554)

Pembaruan Dependensi

  • Dependensi Fragment telah diupdate ke 1.7.0-alpha08.

Versi 1.5.0-alpha05

29 November 2023

androidx.transition:transition:1.5.0-alpha05 dan androidx.transition:transition-ktx:1.5.0-alpha05 dirilis. Versi 1.5.0-alpha05 berisi commit ini.

Perbaikan Bug

  • Memperbaiki NullPointerException yang disebabkan oleh penetapan transisi elemen bersama dan juga gagal menetapkan enter/exitTransition. (I8472b)
  • Memperbaiki masalah saat animateToStart() dengan Slide() gagal memindahkan View kembali ke posisi awal (I698f4, b/300157785)
  • Memperbaiki masalah reentransi di Transisi yang merusak pembatalan. (Iddcce, b/308379201)

Versi 1.5.0-alpha04

4 Oktober 2023

androidx.transition:transition:1.5.0-alpha04 dan `androidx.transition:transition-ktx:1.5.0-alpha04 dirilis. Versi 1.5.0-alpha04 berisi commit ini.

Perubahan API

  • Perubahan yang Dapat Menyebabkan Gangguan - Metode animateToStart() kini menggunakan Runnable yang harus digunakan untuk mengembalikan tampilan transisi kembali ke status aslinya.

Versi 1.5.0-alpha03

20 September 2023

androidx.transition:transition:1.5.0-alpha03 dan androidx.transition:transition-ktx:1.5.0-alpha03 dirilis. Versi 1.5.0-alpha03 berisi commit ini.

Fitur Baru

  • Transisi kini menyediakan dukungan untuk animasi Kembali Prediktif dalam aplikasi di perangkat Android 14 saat digunakan dengan Fragment 1.7.0-alpha05.

Perbaikan Bug

  • Memperbaiki bug gangguan Transisi Slide. Jika Transisi Slide mengganggu transisi masuk untuk menghapus View, transisi tersebut akan melompat ke posisi yang salah. (I946f8, b/297427333)

Versi 1.5.0-alpha02

6 September 2023

androidx.transition:transition:1.5.0-alpha02 dan androidx.transition:transition-ktx:1.5.0-alpha02 dirilis. Versi 1.5.0-alpha02 berisi commit ini.

Fitur Baru

  • TransitionSeekController kini memungkinkan Anda menetapkan progres sebagai pecahan dari total durasi melalui setCurrentFragment(). (aosp/2647607)
  • TransitionSeekController kini memungkinkan pengamatan progres saat menggunakan animateToStart() dan animateToEnd() dengan memanggil addOnProgressChangedListener. (aosp/2647607)
  • Menambahkan TransitionManager.seekTo() untuk mengizinkan penggunaan Scene untuk mencari Transisi. (aosp/2647607)
  • Menambahkan animasi berbasis fisika untuk mencari transisi. Fungsi ini menggunakan pelacak kecepatan 1-D untuk melacak perubahan progres dengan setCurrentFraction() atau setCurrentPlayTimeMillis() dan menggunakannya untuk kecepatan awal animateToStart dan animateToEnd. (aosp/2647607)

Perbaikan Bug

  • Memperbaiki kedipan saat mencari AutoTransition. (aosp/2643369)
  • Memperbaiki masalah saat transisi Slide akan melompat ke posisi awal yang salah saat terganggu. (aosp/2733729, b/297427333)

Pembaruan Dependensi

  • Transisi kini dikompilasi dengan API 34.

Versi 1.5.0-alpha01

10 Mei 2023

androidx.transition:transition:1.5.0-alpha01 dan androidx.transition:transition-ktx:1.5.0-alpha01 dirilis. Versi ini dikembangkan di cabang internal.

Fitur Baru

  • Transisi mendukung pencarian di API 34 dan yang lebih baru. API baru ditambahkan ke TransitionManager, controlDelayedTransition(), yang menampilkan TransisionSeekController yang memungkinkan pencarian Transisi.

Perubahan API

  • TransitionManager memiliki metode baru, controlDelayedTransition(), yang memungkinkan aplikasi mengontrol progres animasi transisi di API 34+. TransitionSeekController yang ditampilkan memungkinkan developer mengetahui kapan transisi siap untuk dicari, durasi animasi, dan memungkinkan setelan waktu animasi saat ini. Hanya Transisi yang mengganti isSeekable() untuk menampilkan true (benar) yang didukung oleh controlDelayedTransition().
  • Transisi memiliki metode baru, getRootTransition(), yang menampilkan Transisi yang berisi Transisi saat ini atau Transisi saat ini jika tidak dimuat oleh Transisi lainnya. Hal ini dapat berguna jika developer perlu memiliki pemroses untuk saat seluruh Transisi dimulai atau berakhir.
  • TransitionListeners kini memiliki pemroses onTransitionStart() dan onTransitionEnd() baru yang memungkinkan developer mengetahui apakah transisi dimulai atau berakhir secara terbalik atau tidak. Hal ini dapat menjadi penting untuk mengembangkan transisi yang dapat dicari yang memiliki TransitionListeners.

Perbaikan Bug

  • Transisi kini menyalin TransitionListeners saat di-clone. Artinya, menambahkan pemroses baru selama createAnimator() tidak akan memengaruhi Transisi root.

Versi 1.4.1

Versi 1.4.1

21 April 2021

androidx.transition:transition:1.4.1 dan androidx.transition:transition-ktx:1.4.1 dirilis. Versi 1.4.1 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah saat memulai Transition dalam satu penampung secara tidak sengaja akan menjeda transisi lain yang berjalan dalam penampung yang terpisah, sehingga menyebabkan transisi lain tidak pernah selesai. (aosp/1664439, b/182845041)

Versi 1.4.0

Versi 1.4.0

27 Januari 2021

androidx.transition:transition:1.4.0 dan androidx.transition:transition-ktx:1.4.0 dirilis. Versi 1.4.0 berisi commit berikut ini.

Perubahan utama sejak versi 1.3.0

  • Artefak transition-ktx memperkenalkan ekstensi Kotlin untuk menambahkan pemroses ke instance Transition AndroidX. (b/138870873)

Versi 1.4.0-rc01

2 Desember 2020

androidx.transition:transition:1.4.0-rc01 dan androidx.transition:transition-ktx:1.4.0-rc01 dirilis tanpa perubahan dari versi 1.4.0-beta01. Versi 1.4.0-rc01 berisi commit berikut.

Versi 1.4.0-beta01

22 Juli 2020

androidx.transition:transition:1.4.0-beta01 dan androidx.transition:transition-ktx:1.4.0-beta01 dirilis tanpa perubahan sejak 1.4.0-alpha01. Versi 1.4.0-beta01 berisi commit berikut.

Versi 1.4.0-alpha01

24 Juni 2020

androidx.transition:transition:1.4.0-alpha01 dan androidx.transition:transition-ktx:1.4.0-alpha01 dirilis. Versi 1.4.0-alpha01 berisi commit berikut.

Fitur Baru

  • Artefak transition-ktx memperkenalkan ekstensi Kotlin untuk menambahkan pemroses ke instance Transition AndroidX. (b/138870873)

Versi 1.3.1

Versi 1.3.1

19 Februari 2020

androidx.transition:transition:1.3.1 dirilis. Versi 1.3.1 berisi commit ini.

Perbaikan Bug

  • Memperbaiki bug saat beberapa Views animasi terpotong dengan tidak tepat saat ChangeTransform digunakan (b/148798452)

Versi 1.3.0

Versi 1.3.0

22 Januari 2020

androidx.transition:transition:1.3.0 dirilis. Versi 1.3.0 berisi commit berikut.

Perubahan penting sejak versi 1.2.0

  • Peningkatan untuk Fragment 1.2.0: Meningkatkan integrasi dengan Fragment 1.2.0 untuk memastikan bahwa View Fragment tidak dihancurkan sebelum transisi selesai dan bahwa transisi dibatalkan di waktu yang tepat

Versi 1.3.0-rc02

4 Desember 2019

androidx.transition:transition:1.3.0-rc02 dirilis. Versi 1.3.0-rc02 berisi commit berikut.

Perbaikan bug

  • Memperbaiki masalah ketika Views salah ditandai dengan INVISIBLE setelah Fragment tersembunyi muncul. (b/70793925)

Versi 1.3.0-rc01

23 Oktober 2019

androidx.transition:transition:1.3.0-rc01 dirilis tanpa perubahan sejak 1.3.0-beta01. Versi 1.3.0-rc01 berisi commit berikut.

Versi 1.3.0-beta01

9 Oktober 2019

androidx.transition:transition:1.3.0-beta01 dirilis. Versi 1.3.0-beta01 berisi commit berikut.

Fitur baru

  • Meningkatkan integrasi dengan Fragment 1.2.0-beta01 untuk memastikan bahwa View Fragment tidak dihancurkan sebelum transisi selesai dan bahwa transisi dibatalkan di waktu yang tepat. (aosp/1119841)

Versi 1.2.0

Versi 1.2.0

9 Oktober 2019

androidx.transition:transition:1.2.0 dirilis tanpa perubahan dari versi 1.2.0-rc01 . Versi 1.2.0 berisi commit berikut.

Perubahan penting sejak versi 1.1.0

Versi ini harus digunakan jika Anda menargetkan API level 29. Jika tidak, beberapa transisi tidak akan berfungsi dengan benar. Sebagai pengganti panggilan refleksi, versi ini menggunakan metode publik baru yang ditambahkan pada API Level 29. Metode tersebut merupakan bagian dari pembatasan kami pada upaya antarmuka non-SDK.

Versi 1.2.0-rc01

5 September 2019

androidx.transition:transition:1.2.0-rc01 dirilis tanpa perubahan sejak versi 1.2.0-beta01. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Versi 1.2.0-beta01

2 Juli 2019

androidx.transition:transition:1.2.0-beta01 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.

.

Fitur baru

  • Versi ini harus digunakan jika Anda menetapkan 29 sebagai targetSdkVersion. Jika tidak, beberapa transisi tidak akan berfungsi dengan benar. Sebagai pengganti panggilan refleksi, versi ini menggunakan metode publik baru yang ditambahkan pada API Level 29. Metode tersebut merupakan bagian dari pembatasan kami pada upaya antarmuka non-SDK.

Versi 1.2.0-alpha01

7 Mei 2019

androidx.transition:transition:1.2.0-alpha01 dirilis.

.

Fitur baru

  • Versi ini harus digunakan jika Anda menetapkan Q sebagai targetSdkVersion. Jika tidak, beberapa transisi tidak akan berfungsi dengan benar. Versi ini menggunakan metode publik baru yang ditambahkan di Q, bukan panggilan refleksi. Metode tersebut merupakan bagian dari pembatasan kami pada upaya antarmuka non-SDK.

Versi 1.1.0

Versi 1.1.0

2 Juli 2019

androidx.transition:transition:1.1.0 dirilis tanpa perubahan dari 1.1.0-rc02. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Versi 1.1.0-rc02

5 Juni 2019

androidx.transition:transition:1.1.0-rc02 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Perbaikan bug

  • Perbaikan untuk TransitionManager.endTransitions() agar berfungsi sebagaimana mestinya dengan transisi dependen. (aosp/946400)

Versi 1.1.0-rc01

7 Mei 2019

androidx.transition:transition:1.1.0-rc01 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Versi 1.1.0-beta01

3 April 2019

androidx.transition:transition:1.1.0-beta01 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Perbaikan bug

  • Memperbaiki bug pembuatan cache ViewGroupOverlay di Visibility yang terjadi pada API Level 17 dan yang lebih lama (aosp/937350)

Versi 1.1.0-alpha02

13 Maret 2019

androidx.transition:transition:1.1.0-alpha02 dirilis. Daftar lengkap commit yang disertakan dalam versi ini dapat dilihat di sini.

Perubahan API

  • Jenis parameter metode Scene.getCurrentScene() diubah dari View menjadi ViewGroup.

Perbaikan bug

  • SidePropagation tidak berfungsi saat penundaan tambahan diberikan melalui setStartDelay() (b/119839526).
  • ChangeImageTransform menerapkan matriks yang salah saat disela sebelum API 21 (b/123226255).
  • ChangeTransform tidak berfungsi dengan benar dalam beberapa situasi sebelum API 21 (b/125777978).

Versi 1.1.0-alpha01

3 Desember 2018

Perubahan API

  • aosp/807055: metode Scene.getCurrentScene(View) dibuat menjadi publik. Perubahan ini memungkinkan Anda menulis logika kondisional kustom sesuai dengan keadaan saat ini.

Perbaikan bug

  • Memperbaiki error saat menggunakan TransitionManager untuk menciutkan/meluaskan item di RecyclerView (b/37129527).
  • Memperbaiki animasi yang salah ketika dua transisi Visibility diterapkan (b/62629600).
  • Mengizinkan nilai pengganti seperti durasi dan interpolator untuk turunan TransitionSet (b/64644617).
  • Memperbaiki banyak bug minor lainnya.