Przejście

Animuj ruch w interfejsie za pomocą układów początkowego i końcowego.
Najnowsza aktualizacja Wersja stabilna Wersja kandydująca do publikacji Wersja Beta Wersja alfa
30 lipca 2025 r. 1.6.0 - - 1.7.0-alpha01

Deklarowanie zależności

Aby dodać zależność od biblioteki Transition, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven Google.

Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:

Odlotowe

dependencies {
    // Java language implementation
    implementation "androidx.transition:transition:1.6.0"
    // Kotlin
    implementation "androidx.transition:transition-ktx:1.6.0"
}

Kotlin

dependencies {
    // Java language implementation
    implementation("androidx.transition:transition:1.6.0")
    // Kotlin
    implementation("androidx.transition:transition-ktx:1.6.0")
}

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.

Tworzenie nowego problemu

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Wersja 1.7

Wersja 1.7.0-alpha01

30 lipca 2025 r.

androidx.transition:transition:1.7.0-alpha01androidx.transition:transition-ktx:1.7.0-alpha01 zostają opublikowane. Wersja 1.7.0-alpha01 zawiera te zmiany.

Poprawki błędów

  • Naprawiliśmy awarię, która występowała, gdy widok był dołączony do okna z wartością null windowId. (I2ddf6)

Wersja 1.6

Wersja 1.6.0

23 kwietnia 2025 r.

androidx.transition:transition:1.6.0androidx.transition:transition-ktx:1.6.0 zostają opublikowane. Wersja 1.6.0 zawiera te zmiany.

Wersja 1.6.0-rc01

26 marca 2025 r.

androidx.transition:transition:1.6.0-rc01androidx.transition:transition-ktx:1.6.0-rc01 zostają opublikowane. Wersja 1.6.0-rc01 zawiera te zmiany.

Wersja 1.6.0-beta01

12 marca 2025 r.

androidx.transition:transition:1.6.0-beta01androidx.transition:transition-ktx:1.6.0-beta01 zostały udostępnione bez zmian od ostatniej wersji alfa. Wersja 1.6.0-beta01 zawiera te zmiany.

Wersja 1.6.0-alpha01

11 grudnia 2024 r.

androidx.transition:transition:1.6.0-alpha01androidx.transition:transition-ktx:1.6.0-alpha01 zostają opublikowane. Wersja 1.6.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Przejście ustawia teraz rozłączny element nadrzędny dla elementu ViewOverlays używanego do animowania przejść. Umożliwia to rozwiązywanie problemów z właścicielami za pomocą rozłączonego elementu nadrzędnego, co oznacza, że podczas przejścia możesz teraz prawidłowo rozwiązywać problemy z ViewModels, cyklami życia itp. (I10a16, b/340894487, b/287484338)

Poprawki błędów

  • Ta biblioteka używa teraz adnotacji o wartości null JSpecify, które są używane w typach. Deweloperzy korzystający z języka Kotlin powinni używać tego argumentu kompilatora, aby wymusić prawidłowe użycie: -Xjspecify-annotations=strict (jest to domyślne ustawienie od wersji 2.1.0 kompilatora Kotlin). (I1f54e, b/326456246)
  • Usunęliśmy ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsu API podczas korzystania z R8 z AGP 7.3 lub nowszym (np. R8 w wersji 3.3) oraz w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszego (np. D8 w wersji 8.1). Klienci, którzy nie korzystają z AGP, powinni zaktualizować D8 do wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (Ia60e0, b/345472586)

Wersja 1.5

Wersja 1.5.1

24 lipca 2024 r.

androidx.transition:transition:1.5.1androidx.transition:transition-ktx:1.5.1 zostają opublikowane. Wersja 1.5.1 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że wywołania funkcji animateToStart() lub animateToEnd() w przypadku przejścia z możliwością przewijania były ignorowane, jeśli przejście nie zostało rozpoczęte. (I44d96, b/338624457)

Wersja 1.5.0

1 maja 2024 r.

androidx.transition:transition:1.5.0androidx.transition:transition-ktx:1.5.0 zostają opublikowane. Wersja 1.5.0 zawiera te zmiany.

Ważne zmiany od wersji 1.4.0

  • Przejścia obsługują wyszukiwanie w interfejsie API na poziomie 34 i wyższym. Do interfejsów API TransitionManager i controlDelayedTransition() dodaliśmy nowy interfejs API, który zwraca TransitionSeekController umożliwiający wyszukiwanie Transition. Ta funkcja jest używana przez Fragment 1.7.0 do automatycznego wyszukiwania przejść podczas korzystania z gestu przewidywania powrotu.
  • Przejścia mają nową metodę getRootTransition(), która zwraca przejście zawierające bieżące przejście lub bieżące przejście, jeśli nie jest ono zawarte w żadnym innym przejściu. Może to być przydatne, jeśli deweloper potrzebuje odbiorników, które będą reagować na rozpoczęcie lub zakończenie całej animacji.
  • TransitionListeners ma teraz nowe odbiorniki onTransitionStart()onTransitionEnd(), które informują dewelopera, czy przejście się rozpoczyna lub kończy, czy jest odwrócone. Może to być ważne w przypadku tworzenia przejść, które można przewijać i które mają TransitionListeners.

Wersja 1.5.0-rc02

17 kwietnia 2024 r.

androidx.transition:transition:1.5.0-rc02androidx.transition:transition-ktx:1.5.0-rc02 zostają opublikowane. Wersja 1.5.0-rc02 zawiera te zmiany.

Aktualizacja zależności

  • Zaktualizowaliśmy zależność Fragment do wersji 1.7.0-rc02, w której usunęliśmy błąd powodujący awarię, gdy do transakcji, w której wszystkie inne przejścia były możliwe do przewijania, dodano element udostępniony, którego nie można było przewijać.

Wersja 1.5.0-rc01

3 kwietnia 2024 r.

androidx.transition:transition:1.5.0-rc01androidx.transition:transition-ktx:1.5.0-rc01 zostają opublikowane. Wersja 1.5.0-rc01 zawiera te zmiany.

Wersja 1.5.0-beta01

20 marca 2024 r.

androidx.transition:transition:1.5.0-beta01androidx.transition:transition-ktx:1.5.0-beta01 zostają opublikowane. Wersja 1.5.0-beta01 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem w fragmentach, który powodował, że przerwanie przychodzących przejść gestem przewidywania powrotu niszczyło widok wejściowy, co mogło skutkować wyświetleniem pustego ekranu. (Id3f22, b/319531491)

Wersja 1.5.0-alpha06

10 stycznia 2024 r.

androidx.transition:transition:1.5.0-alpha06androidx.transition:transition-ktx:1.5.0-alpha06 zostają opublikowane. Wersja 1.5.0-alpha06 zawiera te zmiany.

Poprawki błędów

  • Gdy używana jest funkcjaTransitionSeekController.animateToStart(), dodana funkcjaTransitionListeners będzie teraz wywoływać funkcjęonTransitionEnd() po wywołaniu funkcjianimateToStart() z podanym argumentemRunnable. (Ic6a55, b/307624554)

Aktualizacja zależności

  • Zależność Fragment została zaktualizowana do wersji 1.7.0-alpha08.

Wersja 1.5.0-alpha05

29 listopada 2023 r.

androidx.transition:transition:1.5.0-alpha05androidx.transition:transition-ktx:1.5.0-alpha05 zostają opublikowane. Wersja 1.5.0-alpha05 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem NullPointerException, który był spowodowany ustawieniem przejścia elementu udostępnionego i nieustawieniem jednocześnie enter/exitTransition. (I8472b)
  • Rozwiązaliśmy problem polegający na tym, że animateToStart()Slide() nie przenosiło widoku z powrotem do pozycji początkowej (I698f4, b/300157785).
  • Rozwiązaliśmy problem z ponownym wejściem w przejście, który powodował przerwanie anulowania. (Iddcce, b/308379201)

Wersja 1.5.0-alpha04

4 października 2023 roku

androidx.transition:transition:1.5.0-alpha04 i `androidx.transition:transition-ktx:1.5.0-alpha04. Wersja 1.5.0-alpha04 zawiera te zmiany.

Zmiany w interfejsie API

  • Zmiana powodująca niezgodność – metoda animateToStart() przyjmuje teraz parametr Runnable, który powinien być używany do przywracania widoków przejściowych do ich pierwotnego stanu.

Wersja 1.5.0-alpha03

20 września 2023 r.

androidx.transition:transition:1.5.0-alpha03androidx.transition:transition-ktx:1.5.0-alpha03 zostają opublikowane. Wersja 1.5.0-alpha03 zawiera te zmiany.

Nowe funkcje

  • Biblioteka Transition obsługuje teraz animacje przewidywanego powrotu w aplikacji na urządzeniach z Androidem 14, gdy jest używana z Fragmentem 1.7.0-alpha05.

Poprawki błędów

  • Usunęliśmy błąd przerywania przejścia slajdu. Gdy przejście slajdu przerywało przejście wejścia w celu usunięcia widoku, przeskakiwało do nieprawidłowej pozycji. (I946f8, b/297427333)

Wersja 1.5.0-alpha02

6 września 2023 r.

androidx.transition:transition:1.5.0-alpha02androidx.transition:transition-ktx:1.5.0-alpha02 zostają opublikowane. Wersja 1.5.0-alpha02 zawiera te zmiany.

Nowe funkcje

  • TransitionSeekController umożliwia teraz ustawienie postępu jako ułamka łącznego czasu trwania za pomocą setCurrentFragment(). (aosp/2647607)
  • TransitionSeekController umożliwia teraz obserwowanie postępów podczas korzystania z funkcji animateToStart()animateToEnd() przez wywołanie funkcji addOnProgressChangedListener. (aosp/2647607)
  • Dodano TransitionManager.seekTo(), aby umożliwić korzystanie ze scen do wyszukiwania przejść. (aosp/2647607)
  • Dodano animacje oparte na fizyce do przejść podczas przewijania. Wykorzystuje 1-wymiarowy tracker prędkości do śledzenia zmian postępu za pomocą setCurrentFraction() lub setCurrentPlayTimeMillis() i używa go do określania początkowej prędkości animateToStartanimateToEnd. (aosp/2647607)

Poprawki błędów

  • Usunęliśmy migotanie podczas przewijania AutoTransition. (aosp/2643369)
  • Rozwiązaliśmy problem, który powodował, że przejście Slide po przerwaniu przeskakiwało do nieprawidłowej pozycji początkowej. (aosp/2733729, b/297427333)

Aktualizacja zależności

  • Przejście jest teraz kompilowane z interfejsem API 34.

Wersja 1.5.0-alpha01

10 maja 2023 r.

androidx.transition:transition:1.5.0-alpha01androidx.transition:transition-ktx:1.5.0-alpha01 zostają opublikowane. Ta wersja jest opracowywana w wewnętrznej gałęzi.

Nowe funkcje

  • Przejścia obsługują wyszukiwanie w interfejsie API na poziomie 34 i wyższym. Do interfejsu TransitionManager dodano nowy interfejs API controlDelayedTransition(), który zwraca TransisionSeekController umożliwiający wyszukiwanie przejścia.

Zmiany w interfejsie API

  • TransitionManager ma nową metodę controlDelayedTransition(), która umożliwia aplikacjom kontrolowanie postępu animacji przejścia w przypadku interfejsu API w wersji 34 lub nowszej. Zwracany obiekt TransitionSeekController informuje programistę, kiedy przejście jest gotowe do wyszukiwania, jaka jest długość animacji i umożliwia ustawienie bieżącego czasu animacji. controlDelayedTransition() obsługuje tylko przejścia, które zastępują isSeekable(), aby zwracać wartość „true”.
  • Przejścia mają nową metodę getRootTransition(), która zwraca przejście zawierające bieżące przejście lub bieżące przejście, jeśli nie jest ono zawarte w żadnym innym przejściu. Może to być przydatne, jeśli deweloper potrzebuje odbiorników, które będą reagować na rozpoczęcie lub zakończenie całej animacji.
  • TransitionListeners ma teraz nowe odbiorniki onTransitionStart()onTransitionEnd(), które informują dewelopera, czy przejście się rozpoczyna lub kończy, czy jest odwrócone. Może to być ważne w przypadku tworzenia przejść, które można przewijać i które mają TransitionListeners.

Poprawki błędów

  • Podczas klonowania przejścia kopiują teraz swoje TransitionListeners. Oznacza to, że dodanie nowych słuchaczy podczas createAnimator() nie wpłynie na przejście główne.

Wersja 1.4.1

Wersja 1.4.1

21 kwietnia 2021 r.

androidx.transition:transition:1.4.1androidx.transition:transition-ktx:1.4.1 zostają opublikowane. Wersja 1.4.1 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że rozpoczęcie Transition w jednym kontenerze nieumyślnie wstrzymywało inne trwające przejścia w osobnych kontenerach, przez co te przejścia nigdy się nie kończyły. (aosp/1664439, b/182845041)

Wersja 1.4.0

Wersja 1.4.0

27 stycznia 2021 r.

androidx.transition:transition:1.4.0androidx.transition:transition-ktx:1.4.0 zostają opublikowane. Wersja 1.4.0 zawiera te zmiany.

Główne zmiany od wersji 1.3.0

  • Artefakt transition-ktx wprowadza rozszerzenia Kotlin do dodawania odbiorników do instancji AndroidX Transition. (b/138870873)

Wersja 1.4.0-rc01

2 grudnia 2020 r.

androidx.transition:transition:1.4.0-rc01androidx.transition:transition-ktx:1.4.0-rc01 są udostępniane bez zmian w stosunku do 1.4.0-beta01. Wersja 1.4.0-rc01 zawiera te zmiany.

Wersja 1.4.0-beta01

22 lipca 2020 r.

androidx.transition:transition:1.4.0-beta01androidx.transition:transition-ktx:1.4.0-beta01 zostały opublikowane bez zmian od 1.4.0-alpha01. Wersja 1.4.0-beta01 zawiera te zmiany.

Wersja 1.4.0-alpha01

24 czerwca 2020 r.

androidx.transition:transition:1.4.0-alpha01androidx.transition:transition-ktx:1.4.0-alpha01 zostają opublikowane. Wersja 1.4.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Artefakt transition-ktx wprowadza rozszerzenia Kotlin do dodawania odbiorników do instancji AndroidX Transition. (b/138870873)

Wersja 1.3.1

Wersja 1.3.1

19 lutego 2020 r.

Zostanie wycofaneandroidx.transition:transition:1.3.1 Wersja 1.3.1 zawiera te zmiany.

Poprawki błędów

  • Usunęliśmy błąd, który powodował nieprawidłowe przycinanie niektórych animowanych widoków podczas korzystania z funkcji ChangeTransform (b/148798452).

Wersja 1.3.0

Wersja 1.3.0

22 stycznia 2020 r.

Zostanie wycofaneandroidx.transition:transition:1.3.0 Wersja 1.3.0 zawiera te zmiany.

Ważne zmiany od wersji 1.2.0

  • Ulepszenia w przypadku Fragmentu 1.2.0: ulepszono integrację z Fragmentem 1.2.0, aby widok fragmentu nie był niszczony przed zakończeniem przejścia i aby przejścia były anulowane we właściwym czasie.

Wersja 1.3.0-rc02

4 grudnia 2019

Zostanie wycofaneandroidx.transition:transition:1.3.0-rc02 Wersja 1.3.0-rc02 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że po usunięciu ukrytego fragmentu widoki były nieprawidłowo oznaczane symbolem INVISIBLE. (b/70793925)

Wersja 1.3.0-rc01

23 października 2019 r.

androidx.transition:transition:1.3.0-rc01 zostaje opublikowany bez zmian od 1.3.0-beta01. Wersja 1.3.0-rc01 zawiera te commity.

Wersja 1.3.0-beta01

9 października 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.3.0-beta01 Wersja 1.3.0-beta01 zawiera te zmiany.

Nowe funkcje

  • Ulepszyliśmy integrację z Fragmentem 1.2.0-beta01, aby mieć pewność, że widok Fragmentu nie zostanie zniszczony przed zakończeniem przejścia i że przejścia są anulowane we właściwym czasie. (aosp/1119841)

Wersja 1.2.0

Wersja 1.2.0

9 października 2019 r.

androidx.transition:transition:1.2.0 została wydana bez zmian w porównaniu z wersją 1.2.0-rc01 . Wersja 1.2.0 zawiera te zmiany.

Ważne zmiany od wersji 1.1.0

Tej wersji należy używać, jeśli kierujesz reklamy na poziom interfejsu API 29. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań odbicia ta wersja korzysta z nowych metod publicznych dodanych na poziomie interfejsu API 29. Jest to część naszych działań związanych z ograniczeniami dotyczącymi interfejsów innych niż SDK.

Wersja 1.2.0-rc01

5 września 2019 r.

androidx.transition:transition:1.2.0-rc01 została wydana bez zmian w stosunku do wersji 1.2.0-beta01. Listę zmian w tej wersji znajdziesz tutaj.

Wersja 1.2.0-beta01

2 lipca 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.2.0-beta01 Listę zmian w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Z tej wersji należy korzystać, jeśli jako wartość atrybutu targetSdkVersion podajesz 29. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań odbicia ta wersja korzysta z nowych metod publicznych dodanych na poziomie interfejsu API 29. Jest to część naszych działań związanych z ograniczeniami dotyczącymi interfejsów innych niż SDK.

Wersja 1.2.0-alpha01

7 maja 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.2.0-alpha01

Nowe funkcje

  • Tej wersji należy używać, jeśli określasz Q jako targetSdkVersion. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań odbicia ta wersja korzysta z nowych metod publicznych dodanych w wersji Q. Jest to część naszych działań związanych z ograniczeniami dotyczącymi interfejsów innych niż SDK.

Wersja 1.1.0

Wersja 1.1.0

2 lipca 2019 r.

androidx.transition:transition:1.1.0 zostaje opublikowany bez zmian w stosunku do 1.1.0-rc02. Listę zmian w tej wersji znajdziesz tutaj.

Wersja 1.1.0-rc02

5 czerwca 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.1.0-rc02 Listę zmian w tej wersji znajdziesz tutaj.

Poprawki błędów

  • Poprawka, która umożliwia prawidłowe działanie funkcji TransitionManager.endTransitions() w przypadku przejść zależnych. (aosp/946400)

Wersja 1.1.0-rc01

7 maja 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.1.0-rc01 Listę zmian w tej wersji znajdziesz tutaj.

Wersja 1.1.0-beta01

3 kwietnia 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.1.0-beta01 Listę zmian w tej wersji znajdziesz tutaj.

Poprawki błędów

  • Naprawiono błąd buforowania ViewGroupOverlayVisibility, który występował na poziomie interfejsu API 17 i niższym (aosp/937350).

Wersja 1.1.0-alpha02

13 marca 2019 r.

Zostanie wycofaneandroidx.transition:transition:1.1.0-alpha02 Pełną listę zmian w tej wersji znajdziesz tutaj.

Zmiany w interfejsie API

  • Typ parametru metody Scene.getCurrentScene() został zmieniony z View na ViewGroup.

Poprawki błędów

  • SidePropagation nie działa, gdy dodatkowe opóźnienie jest podane za pomocą setStartDelay() (b/119839526).
  • ChangeImageTransform stosuje nieprawidłową macierz, gdy działanie zostanie przerwane przed API 21 (b/123226255).
  • ChangeTransform w niektórych przypadkach działa nieprawidłowo przed interfejsem API 21 (b/125777978).

Wersja 1.1.0-alpha01

3 grudnia 2018 r.

Zmiany w interfejsie API

  • aosp/807055: Scene.getCurrentScene(View) metoda została udostępniona publicznie. Umożliwia to napisanie niestandardowej logiki warunkowej w zależności od bieżącej sceny.

Poprawki błędów

  • Usunięto awarię podczas używania TransitionManager do zwijania i rozwijania elementu w RecyclerView (b/37129527).
  • Rozwiązaliśmy problem z nieprawidłową animacją, gdy zastosowano 2 przejścia widoczności (b/62629600).
  • Zezwól na zastępowanie wartości, takich jak czas trwania i interpolator, w przypadku elementów podrzędnych TransitionSet (b/64644617).
  • Naprawiono wiele innych drobnych błędów.