Przejście

Animowanie ruchu w interfejsie za pomocą początkowych i końcowych układów.
Najnowsza aktualizacja Wersja stabilna Wersja kandydująca Wersja Beta Wersja alfa
24 lipca 2024 r. 1.5.1 - - -

Deklarowanie zależności

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

Dodaj zależności dla artefaktów, których potrzebujesz, w pliku build.gradle aplikacji lub modułu:

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")
}

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

Opinia

Twoja opinia pomoże nam ulepszyć Jetpacka. Daj nam znać, jeśli odkryjesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj istniejące problemy w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk z gwiazdką.

Tworzenie nowego zgłoszenia

Więcej informacji znajdziesz w dokumentacji narzędzia do śledzenia problemów.

Wersja 1.5

Wersja 1.5.1

24 lipca 2024 r.

androidx.transition:transition:1.5.1androidx.transition:transition-ktx:1.5.1 są dostępne. Wersja 1.5.1 zawiera te komitowane zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że wywołania funkcji animateToStart() lub animateToEnd() w przewijanym przejściu były ignorowane, jeśli przejście nie był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 są dostępne. Wersja 1.5.0 zawiera te komity.

Ważne zmiany od wersji 1.4.0

  • Obsługa przenoszenia użytkowników za pomocą interfejsu API w wersji 34 lub nowszej. Do interfejsu TransitionManager dodano nowy interfejs API, controlDelayedTransition(), który zwraca TransitionSeekController, umożliwiający przewijanie Transition. Ta funkcja jest używana przez Fragment 1.7.0 do automatycznego wyszukiwania przejść podczas korzystania z przewidywanego gestu wstecz.
  • 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. Jest to przydatne, jeśli deweloper potrzebuje detektorów na czas rozpoczęcia lub zakończenia całego przejścia.
  • TransitionListeners ma teraz nowych odbiorców onTransitionStart()onTransitionEnd(), którzy pozwalają deweloperowi wiedzieć, czy przejście zaczyna się lub kończy w odwrotnej kolejności. Może to być ważne przy tworzeniu przejść, które można przewinąć.TransitionListeners

Wersja 1.5.0-rc02

17 kwietnia 2024 r.

androidx.transition:transition:1.5.0-rc02androidx.transition:transition-ktx:1.5.0-rc02 są dostępne. Wersja 1.5.0-rc02 zawiera te komisy.

Aktualizacja zależności

  • Zaktualizowano zależność fragmentu do wersji 1.7.0-rc02. Naprawiliśmy błąd polegający na tym, że w sytuacji, gdy do transakcji, w której można było przewinąć wszystkie pozostałe przejścia, dochodziło do awarii, w przypadku dodania niewidocznego udostępnionego elementu.

Wersja 1.5.0-rc01

3 kwietnia 2024 r.

androidx.transition:transition:1.5.0-rc01androidx.transition:transition-ktx:1.5.0-rc01 są dostępne. Wersja 1.5.0-rc01 zawiera te komisy.

Wersja 1.5.0-beta01

20 marca 2024 r.

androidx.transition:transition:1.5.0-beta01 i androidx.transition:transition-ktx:1.5.0-beta01 zostały udostępnione. Wersja 1.5.0-beta01 zawiera te komity.

Poprawki błędów

  • Rozwiązaliśmy problem w Fragmentach, w którym przerwanie przejść za pomocą gestów przewidywania cofnięcia powodowało zniszczenie widoku wejściowego, co mogło skutkować pustym ekranem. (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 są dostępne. Wersja 1.5.0-alpha06 zawiera te commity.

Poprawki błędów

  • Gdy TransitionSeekController.animateToStart() jest używane, dodana funkcja TransitionListeners będzie wywoływać funkcję onTransitionEnd() po wywołaniu funkcji Runnable w ramach funkcji animateToStart(). (Ic6a55, b/307624554)

Aktualizacja zależności

  • Zależność fragmentu 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 są dostępne. Wersja 1.5.0-alpha05 zawiera te commity.

Poprawki błędów

  • Rozwiązaliśmy błąd NullPointerException spowodowany ustawieniem przejścia elementu współdzielonego i nieustawieniem enter/exitTransition. (I8472b)
  • Rozwiązaliśmy problem polegający na tym, że w animateToStart()Slide() nie można było przenieść widoku z powrotem do pozycji początkowej (I698f4, b/300157785).
  • Rozwiązaliśmy problem z reentranty w Transition, który powodował błąd 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 zostały opublikowane. Wersja 1.5.0-alpha04 zawiera te commity.

Zmiany w interfejsie API

  • Zmiany w wersji beta: 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 są dostępne. Wersja 1.5.0-alpha03 zawiera te commity.

Nowe funkcje

  • Transition obsługuje teraz animacje wstecznego przechodzenia w aplikacji na urządzeniach z Androidem 14, gdy są one używane z Fragmentem 1.7.0-alpha05.

Poprawki błędów

  • Usunęliśmy błąd przerwania slajdu. Gdy przejście między slajdami przerywał przejście wprowadzające, aby usunąć widok, przeskakiwało ono 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 są dostępne. Wersja 1.5.0-alfa02 zawiera te zatwierdzenia.

Nowe funkcje

  • TransitionSeekController umożliwia teraz ustawienie postępu jako ułamka całkowitego czasu trwania za pomocą setCurrentFragment(). (Aosp/2647607).
  • TransitionSeekController umożliwia teraz obserwowanie postępów podczas korzystania z animateToStart() i animateToEnd() przez wywołanie addOnProgressChangedListener. (Aosp/2647607).
  • Dodano TransitionManager.seekTo(), aby umożliwić używanie scen do przewijania przejść. (aosp/2647607)
  • Do wyszukiwania przejść dodaliśmy animacje oparte na fizyce. Do śledzenia zmiany postępu za pomocą funkcji setCurrentFraction() lub setCurrentPlayTimeMillis() używa śledzenia prędkości w 1 wymiarach, a także do początkowej prędkości animateToStartanimateToEnd. (aosp/2647607)

Poprawki błędów

  • Usunęliśmy błąd, który powodował migotanie podczas przewijania AutoTransition. (aosp/2643369)
  • Rozwiązaliśmy problem, który powodował, że po przerwaniu przejścia Slide przeskakiwało ono do niewłaściwej 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 są dostępne. Ta wersja jest opracowywana w gałęzi wewnętrznej.

Nowe funkcje

  • Przejścia obsługują przewijanie na interfejsie API 34 i nowszych. Do TransitionManager (controlDelayedTransition()) dodano nowy interfejs API, który zwraca TransisionSeekController umożliwiający przejście do przejścia.

Zmiany interfejsu 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. Zwracana wartość TransitionSeekController informuje dewelopera, kiedy przejście jest gotowe do przeskakiwania, czas trwania animacji i umożliwia ustawienie bieżącego czasu animacji. controlDelayedTransition() obsługuje tylko przejścia, które zastępują wartość isSeekable() tak, aby zwracała wartość „prawda”.
  • Przejścia zawierają nową metodę (getRootTransition()), która zwraca przejście zawierające bieżące lub bieżące przejście, jeśli nie jest ono zawarte w żadnym innym przejściu. Jest to przydatne, jeśli deweloper potrzebuje odbiorców, gdy rozpoczyna się lub kończy cały proces przejścia.
  • TransitionListeners ma teraz nowe detektory onTransitionStart() i onTransitionEnd(), dzięki którym deweloper może wiedzieć, czy przejście zaczyna się lub kończy w odwrotnym kierunku. Może to być ważne przy tworzeniu przejść, które można przewinąć.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 są dostępne. Wersja 1.4.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że uruchomienie Transition w jednym kontenerze przypadkowo wstrzymywało inne przeprowadzane 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 są dostępne. Wersja 1.4.0 zawiera te zatwierdzenia.

Najważniejsze zmiany od wersji 1.3.0

  • Artefakt transition-ktx wprowadza rozszerzenia Kotlin służące do dodawania detektorów do instancji w systemie 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ą publikowane bez zmian w porównaniu z wersją 1.4.0-beta01. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.

Wersja 1.4.0-beta01

22 lipca 2020 r.

Wersje androidx.transition:transition:1.4.0-beta01 i androidx.transition:transition-ktx:1.4.0-beta01 zostały udostępnione bez zmian od 1.4.0-alpha01. Wersja 1.4.0-beta01 zawiera te zatwierdzenia.

Wersja 1.4.0-alpha01

24 czerwca 2020 r.

androidx.transition:transition:1.4.0-alpha01androidx.transition:transition-ktx:1.4.0-alpha01 są dostępne. Wersja 1.4.0-alpha01 zawiera te commity.

Nowe funkcje

  • Artefakt transition-ktx wprowadza rozszerzenia Kotlina dodawane do instancji AndroidX Transition, które umożliwiają dodawanie słuchaczy. (b/138870873)

Wersja 1.3.1

Wersja 1.3.1

19 lutego 2020 r.

androidx.transition:transition:1.3.1 został zwolniony. Wersja 1.3.1 zawiera te zatwierdzenia.

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.

androidx.transition:transition:1.3.0 został zwolniony. Wersja 1.3.0 zawiera te zatwierdzenia

Ważne zmiany od wersji 1.2.0

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

Wersja 1.3.0-rc02

4 grudnia 2019

androidx.transition:transition:1.3.0-rc02 został zwolniony. Wersja 1.3.0-rc02 zawiera te zatwierdzenia:

Poprawki błędów.

  • Rozwiązaliśmy problem polegający na tym, że po wygenerowaniu ukrytego fragmentu widoki były nieprawidłowo oznaczane jako INVISIBLE. (b/70793925)

Wersja 1.3.0-rc01

23 października 2019 r.

androidx.transition:transition:1.3.0-rc01 jest publikowany bez zmian od 1.3.0-beta01. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.

Wersja 1.3.0-beta01

9 października 2019 r.

androidx.transition:transition:1.3.0-beta01 został zwolniony. Wersja 1.3.0-beta01 zawiera te zatwierdzenia:

Nowe funkcje

  • Ulepszono integrację z Fragmentem 1.2.0-beta01, aby widok fragmentu nie był usuwany przed zakończeniem przejścia, a przejścia były 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 jest wydana bez zmian w porównaniu z 1.2.0-rc01 . Wersja 1.2.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.1.0

Należy używać tej wersji, jeśli kierujesz aplikację na poziom interfejsu API 29. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań za pomocą mechanizmu odzwierciedlenia ta wersja używa nowych publicznych metod dodanych w poziomie interfejsu API 29. Jest to część naszych ograniczeń dotyczących interfejsów innych niż SDK.

Wersja 1.2.0-rc01

5 września 2019 r.

androidx.transition:transition:1.2.0-rc01 jest wydana bez zmian od wersji 1.2.0-beta01. Zmiany zawarte w tej wersji znajdziesz tutaj.

Wersja 1.2.0-beta01

2 lipca 2019 r.

androidx.transition:transition:1.2.0-beta01 został zwolniony. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Należy użyć tej wersji, jeśli jako targetSdkVersion podajesz 29. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań za pomocą mechanizmu odzwierciedlenia ta wersja używa nowych publicznych metod dodanych w poziomie interfejsu API 29. Jest to część naszych ograniczeń związanych z używaniem interfejsów innych niż SDK.

Wersja 1.2.0-alpha01

7 maja 2019 r.

androidx.transition:transition:1.2.0-alpha01 został zwolniony.

Nowe funkcje

  • Należy użyć tej wersji, jeśli Q jest określone jako targetSdkVersion. W przeciwnym razie niektóre przejścia nie będą działać prawidłowo. Zamiast wywołań za pomocą mechanizmu odwoływania się do kodu tej wersji używa nowych publicznych metod dodanych w Androidzie Q. Jest to część naszych ograniczeń dotyczących interfejsów innych niż SDK.

Wersja 1.1.0

Wersja 1.1.0

2 lipca 2019 r.

androidx.transition:transition:1.1.0 jest publikowany bez zmian z 1.1.0-rc02. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.

Wersja 1.1.0-rc02

5 czerwca 2019 r.

androidx.transition:transition:1.1.0-rc02 został zwolniony. Zmiany zawarte w tej wersji znajdziesz tutaj.

Poprawki błędów

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

Wersja 1.1.0-rc01

7 maja 2019 r.

androidx.transition:transition:1.1.0-rc01 został zwolniony. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.

Wersja 1.1.0-beta01

3 kwietnia 2019 r.

Usługa androidx.transition:transition:1.1.0-beta01 została zwolniona. Zmiany zawarte w tej wersji znajdziesz tutaj.

Poprawki błędów

  • Naprawiono błąd dotyczący buforowania ViewGroupOverlay w funkcji Visibility, który występował na poziomie interfejsu API 17 i niżej (aosp/937350).

Wersja 1.1.0-alfa02

13 marca 2019 r.

androidx.transition:transition:1.1.0-alpha02 został zwolniony. Pełną listę zatwierdzeń zawartych 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 setStartDelay() poda dodatkowe opóźnienie (b/119839526).
  • ChangeImageTransform stosuje nieprawidłową matrycę, gdy zostanie przerwane przed interfejsem API 21 (b/123226255).
  • ChangeTransform działa nieprawidłowo w niektórych przypadkach w wersjach starszych niż API 21 (b/125777978).

Wersja 1.1.0-alpha01

3 grudnia 2018 r.

Zmiany w interfejsie API

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

Poprawki błędów.

  • Usunięto awarię, która występowała podczas używania TransitionManager do zwijania lub rozwijania elementu w RecyclerView (b/37129527).
  • Naprawiono nieprawidłową animację podczas stosowania 2 przejść widoczności (b/62629600).
  • Zezwalaj na zastąpienie wartości takich jak czas trwania i interpolator w przypadku elementów TransitionSet (b/64644617).
  • Naprawiono wiele innych drobnych błędów.