Utwórz animację

Twórz animacje w aplikacjach Jetpack Compose, aby wzbogacać wrażenia użytkowników.
Najnowsza aktualizacja Wersja stabilna Kandydat do wydania Wersja Beta Wydanie alfa
4 września 2024 r. 1.7.0 - - 1.8.0-alfa01

Struktura

Narzędzie Compose to kombinacja 7 identyfikatorów grupy Maven w obrębie reguły androidx. Każda grupa zawiera docelowy podzbiór funkcji, z których każda ma własny zestaw wersji; notatek.

W tej tabeli opisano grupy i linki do poszczególnych zestawów informacji o wersji.

GrupaOpis
compose.animation,Twórz animacje w aplikacjach Jetpack Compose, aby wzbogacać wrażenia użytkowników.
compose.buildrPrzekształcaj funkcje @Composable i optymalizuj funkcje za pomocą wtyczki kompilatora Kotlin.
compose.foundationTwórz aplikacje w Jetpack Compose, używając gotowych do użycia elementów składowych, i rozbuduj podstawy, aby tworzyć własne elementy systemu.
compose.material,Twórz interfejsy Jetpack Compose z gotowymi do użycia komponentami Material Design. Jest to punkt wejścia wyższego poziomu w Composer, który ma dostarczać komponenty pasujące do tych opisanych na www.material.io.
compose.material3,Twórz interfejsy Jetpack Compose z komponentami Material Design 3, które stanowią kolejną wersję Material Design. Material 3 ma zaktualizowane motywy i komponenty oraz funkcje personalizacji Material You, takie jak dynamiczne kolory, i został zaprojektowany tak, aby był spójny z nowym stylem wizualnym i interfejsem systemu na Androidzie 12.
compose.runtime,Podstawowe elementy składowe modelu programowania i zarządzania stanem w usłudze Compose oraz podstawowe środowisko wykonawcze, na które ma być kierowana wtyczka kompilatora Compose.
compose.ui,Podstawowe elementy interfejsu tworzenia wiadomości niezbędne do interakcji z urządzeniem, w tym układ, rysowanie i wprowadzanie tekstu.

Deklarowanie zależności

Aby dodać zależność w Compose, musisz dodać repozytorium Google Maven do w projektach AI. Zapoznaj się z repozytorium Google Maven. .

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

Odlotowe

dependencies {
    implementation "androidx.compose.animation:animation:1.7.0"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.animation:animation:1.7.0")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

Opinia

Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli odkryjesz nowe problemy jak ulepszyć tę bibliotekę. Przyjrzyj się istniejące problemy w tej bibliotece, zanim utworzysz nową. Możesz zagłosować nad istniejącym problemem przez klikając przycisk gwiazdki.

Tworzenie nowego numeru

Zobacz dokumentację narzędzia Issue Tracker. .

Wersja 1.8

Wersja 1.8.0-alpha01

4 września 2024 r.

Usługa androidx.compose.animation:animation-*:1.8.0-alpha01 została zwolniona. Wersja 1.8.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

  • Nowy interfejs API Modifier.animateBounds do animowania zmian rozmiaru i pozycji w zakresie obserwacji z wyprzedzeniem. 94b9394,

Zmiany interfejsu API

  • Usuwanie flag eksperymentalnych z klatek kluczowych z łukami i kreskami (89e1199)

Poprawki błędów

  • Popraw SharedTransitionScope, które nie rysują elementów w określonych warunkach (b41077b6)
  • Pomiń logikę placeHolderSize, gdy nie znaleziono dopasowania (77c0160)
  • Ogranicz czas odtwarzania w strefie AndroidFlingSpline, aby zapobiec awariom spowodowanym wydłużeniem czasu odtwarzania w sposób niemonotoniczny(9d47587)

Treści tłumaczone przez użytkowników zewnętrznych

  • Zapobiegaj ustawianiu przejścia z możliwością przewijania playTime, gdy nie jest uruchomione żadne przejście c2e6e7e6

Wersja 1.7

Wersja 1.7.0

4 września 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0 została zwolniona.

Ważne zmiany od wersji 1.6.0

Ważne zmiany w wersji 1.7.0 opisaliśmy w tym poście na blogu.

Nowe interfejsy API przenoszenia elementów wspólnych

  • Nowe interfejsy API do przenoszenia elementów udostępnionych czekają na Ciebie i Twoją opinię. Te nowe, eksperymentalne interfejsy API umożliwiają dodawanie tagów do układów udostępnianych w drzewie układu za pomocą dostępnych modyfikatorów. Dzięki temu granice są płynnie zmieniane, gdy jeden zbiór udostępnionych treści znika, a drugi – pojawia się. (Icb0b9)
  • Nowe scaleInSharedContentToBounds i scaleOutSharedContentToBounds do skalowania treści w sharedBounds (I731c1)
  • Eksperymentalna funkcja SharedTransitionScope to teraz interfejs, a nie klasa. (Iaf856).
  • Nowe resizeModes (ScaleToBounds i RemeasureToBounds) dla sharedBounds umożliwiają wybór skalowania lub ponownego pomiaru. Poprzednie interfejsy API scaleIn/OutSharedContentToBounds zostały wycofane. (I0d41a)

Ulepszenia istniejących interfejsów API:

  • Nowy element Modifier.animateContentSize, który wymaga dodatkowego parametru niestandardowego wyrównywania treści. (I5623a, b/269803907)
  • Nowa eksperymentalna wartość DeferredTargetAnimation do animowania rozmiaru, pozycji lub innego celu, który jest nieznany podczas tworzenia instancji. (I60745)
  • Funkcja SeekableTransitionState zastępuje element snapTo() elementem seekTo() i dodaje element snapTo(), który natychmiast zmienia stan na stan docelowy bez żadnej animacji.
  • Możesz teraz przekazać wartość periodicBias (zmiennoprzecinkową) do funkcji keyframesWithSpline. Dzięki temu prędkość początkowa i końcowa krzywej będą takie same. Ta opcja jest przydatna w przypadku powtarzalnych animacji utworzonych z wykorzystaniem splinii. Odchylenie wskazuje, jak bardzo każda prędkość (początkowa i końcowa) jest modyfikowana w celu uzyskania okresowości. (Ic1e6c, b/292114811)

Te interfejsy API są stabilne lub zostały usunięte:

  • AnimatedVisibilityScope.transition to teraz stabilny interfejs API. Urządzenie Modifier.animateEnterExit(..) również jest stabilne. (I6c1d1).
  • ApproachLayoutModifierNode i Modifier.approachLayout są teraz stabilne. Zastąpiły je odpowiednio nowe wersje isMeasurementApproachInProgress() i isPlacementApproachInProgress(), które zastąpią odpowiednio stare isMeasurementApproachComplete() i isPlacementApproachComplete().
  • Usunięto wycofany modyfikator intermediateLayout. (I3E91C).
  • LookaheadScope interfejs API został stabilny. (I21507)

Wersja 1.7.0-rc01

21 sierpnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-rc01 została zwolniona. Wersja 1.7.0-rc01 zawiera te zatwierdzenia.

Wersja 1.7.0-beta07

7 sierpnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta07 została zwolniona. Wersja 1.7.0-beta07 zawiera te zatwierdzenia.

Poprawki błędów

  • Rozwiązany problem: SharedTransitionScope nie rysuje elementów nakładanych podczas przejść w określonych warunkach, które zwykle obejmują użycie z Nawigacją. (Id65ab, b/347520198)

Wersja 1.7.0-beta06

24 lipca 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta06 została zwolniona. Wersja 1.7.0-beta06 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono wycieki stanów przejścia SeekableTransition przez prawidłowe usunięcie obserwacji z SnapshotStateObserver podczas usuwania przejścia. (B9C7182)
  • Rozwiązano skrajne przypadki, w których przejścia podrzędne nie były prawidłowo oznaczane jako ukończone po zakończeniu procesu nadrzędnego. (dc42216),

Wersja 1.7.0-beta05

10 lipca 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta05 została zwolniona. Wersja 1.7.0-beta05 zawiera te zatwierdzenia.

Poprawki błędów

  • Właściwość przejścia totalDurationNanos można teraz poprawnie odczytać w elemencie snapshotFlow.

Wersja 1.7.0-beta04

26 czerwca 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta04 została zwolniona. Wersja 1.7.0-beta04 zawiera te zatwierdzenia.

Wersja 1.7.0-beta03

12 czerwca 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta03 została zwolniona. Wersja 1.7.0-beta03 zawiera te zatwierdzenia.

Wersja 1.7.0-beta02

29 maja 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta02 została zwolniona. Wersja 1.7.0-beta02 zawiera te zatwierdzenia.

Wersja 1.7.0-beta01

14 maja 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-beta01 została zwolniona. Wersja 1.7.0-beta01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowe resizeModes (ScaleToBounds i RemeasureToBounds) dla sharedBounds umożliwiają wybór skalowania lub ponownego pomiaru. Poprzednie interfejsy API scaleIn/OutSharedContentToBounds zostały wycofane. (I0d41a)

Treści tłumaczone przez użytkowników zewnętrznych

Wersja 1.7.0-alpha08

1 maja 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha08 została zwolniona. Wersja 1.7.0-alfa08 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • LookaheadScope interfejs API został stabilny. (I21507)

Treści tłumaczone przez użytkowników zewnętrznych

  • Wyczyść czas rozpoczęcia animacji po animacji/zaciągnięciu użytkownika SeekableTransitionState przez Stevena Schoena (1ca89529)

Wersja 1.7.0-alpha07

17 kwietnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha07 została zwolniona. Wersja 1.7.0-alfa07 zawiera te zatwierdzenia.

Nowe funkcje

  • Nowe interfejsy API do przenoszenia elementów udostępnionych czekają na Ciebie i Twoją opinię. Te nowe, eksperymentalne interfejsy API umożliwiają dodawanie tagów do układów udostępnianych w drzewie układu za pomocą dostępnych modyfikatorów. Dzięki temu granice są płynnie zmieniane, gdy jeden zbiór udostępnionych treści znika, a drugi – pojawia się. (Icb0b9)
  • Nowe scaleInSharedContentToBounds i scaleOutSharedContentToBounds do skalowania treści w sharedBounds (I731c1)

Zmiany interfejsu API

  • AnimatedVisibilityScope.transition to teraz stabilny interfejs API. Urządzenie Modifier.animateEnterExit(..) również jest stabilne. (I6c1d1).
  • ApproachLayoutModifierNode i Modifier.approachLayout są teraz stabilne. Zastąpiły je odpowiednio nowe wersje isMeasurementApproachInProgress() i isPlacementApproachInProgress(), które zastąpią odpowiednio stare isMeasurementApproachComplete() i isPlacementApproachComplete().
  • Usunięto wycofany modyfikator intermediateLayout. (I3E91C).
  • Możesz teraz przekazać wartość periodicBias (zmiennoprzecinkową) do funkcji keyframesWithSpline. Dzięki temu prędkość początkowa i końcowa krzywej będą takie same. Ta opcja jest przydatna w przypadku powtarzalnych animacji utworzonych z wykorzystaniem splinii. Odchylenie wskazuje, jak bardzo każda prędkość (początkowa i końcowa) jest modyfikowana w celu uzyskania okresowości. (Ic1e6c, b/292114811)

Poprawki błędów

  • Poprawiono zbyt długie i niedostateczne krzywe wygładzania, które wcześniej były ograniczane do wartości 0..1 (I38747).

Wersja 1.7.0-alpha06

3 kwietnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha06 została zwolniona. Wersja 1.7.0-alfa06 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługa animacji wyglądu i znikania elementów została dodana do LazyColumn i LazyRow. Wcześniej można było dodać modyfikator Modifier.animateItemPlacement() w celu obsługi animacji miejsca docelowego (zmiany kolejności). Wycofaliśmy ten modyfikator i wprowadziliśmy nowy, nieeksperymentalny modyfikator o nazwie Modifier.animateItem(), który umożliwia obsługę wszystkich 3 typów animacji: wyglądu (rozjaśniania), znikania (zanikania) i zmiany kolejności. (I2d7f7, b/330152398, b/150812265)

Poprawki błędów

  • Zwiększona wydajność interfejsu API updateTransition.

Wersja 1.7.0-alpha05

20 marca 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha05 została zwolniona. Wersja 1.7.0-alfa05 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Funkcja SeekableTransitionState zastępuje element snapTo() elementem seekTo() i dodaje element snapTo(), który natychmiast zmienia stan na stan docelowy bez żadnej animacji.

Wersja 1.7.0-alpha04

6 marca 2024 roku

Usługa androidx.compose.animation:animation-*:1.7.0-alpha04 została zwolniona. Wersja 1.7.0-alfa04 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy interfejs API Path.reverse() do odwrócenia kierunku ścieżki (I36348)

Wersja 1.7.0-alpha03

21 lutego 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha03 została zwolniona. Wersja 1.7.0-alfa03 zawiera te zatwierdzenia.

Nowe funkcje

  • Nowy element Modifier.animateContentSize, który wymaga dodatkowego parametru niestandardowego wyrównywania treści. (I5623a, b/269803907)
  • Nowa eksperymentalna wartość DeferredTargetAnimation do animowania rozmiaru, pozycji lub innego celu, który jest nieznany podczas tworzenia instancji. (I60745)

Wersja 1.7.0-alpha02

7 lutego 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha02 została zwolniona. Wersja 1.7.0-alfa02 zawiera te zatwierdzenia.

Poprawki błędów

  • Poprawka zgodności dla aplikacji KeyframesSpec. (I2bdf3, b/322214617)
  • Rozwiązaliśmy problem z resetowaniem urządzenia Modifier.animateContentSize w przypadku aplikacji LazyList. (I070512, b/322525716)
  • Naprawiono IllegalStateException w przypadku KeyframesSpec korzystania z sygnatury czasowej spoza zakresu. (I341b8, b/322839811)

Wersja 1.7.0-alpha01

24 stycznia 2024 r.

Usługa androidx.compose.animation:animation-*:1.7.0-alpha01 została zwolniona. Wersja 1.7.0-alfa01 zawiera te zatwierdzenia.

Wersja 1.6

Wersja 1.6.8

12 czerwca 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.8 została zwolniona. Wersja 1.6.8 zawiera te zatwierdzenia.

Wersja 1.6.7

1 maja 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.7 została zwolniona. Wersja 1.6.7 zawiera te zatwierdzenia.

Wersja 1.6.6

17 kwietnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.6 została zwolniona. Brak zmian od poprzedniej wersji

Wersja 1.6.5

3 kwietnia 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.5 została zwolniona. Wersja 1.6.5 zawiera te zatwierdzenia.

Wersja 1.6.4

20 marca 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.4 została zwolniona. Wersja 1.6.4 zawiera te zatwierdzenia.

Wersja 1.6.3

6 marca 2024 roku

Usługa androidx.compose.animation:animation-*:1.6.3 została zwolniona. Wersja 1.6.3 zawiera te zatwierdzenia.

Wersja 1.6.2

21 lutego 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.2 została zwolniona. Wersja 1.6.2 zawiera te zatwierdzenia.

Wersja 1.6.1

7 lutego 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.1 została zwolniona. Wersja 1.6.1 zawiera te zatwierdzenia.

Poprawki błędów

Wersja 1.6.0

24 stycznia 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.0 została zwolniona. Wersja 1.6.0 zawiera te zatwierdzenia.

Wersja 1.6.0-rc01

10 stycznia 2024 r.

Usługa androidx.compose.animation:animation-*:1.6.0-rc01 została zwolniona. Wersja 1.6.0-rc01 zawiera te zatwierdzenia.

Wersja 1.6.0-beta03

13 grudnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-beta03 została zwolniona. Wersja 1.6.0-beta03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Tymczasowo usunięto dane scaleInToFitContainer i scaleOutToFitContainer z pakietu AnimatedContentTransitionScope, ponieważ wymagają one obserwacji z wyprzedzeniem. Będą one dostępne, jeśli funkcja wyszukiwania z wyprzedzeniem jest domyślnie włączona lub będzie włączona w przyszłych wersjach.

Wersja 1.6.0-beta02

29 listopada 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-beta02 została zwolniona. Wersja 1.6.0-beta02 zawiera te zatwierdzenia.

Wersja 1.6.0-beta01

15 listopada 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-beta01 została zwolniona. Wersja 1.6.0-beta01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nazwa ExitTransition.Hold została zmieniona na ExitTransition.KeepUntilTransitionsFinished, aby była bardziej zrozumiała. (I1C490)
  • Możesz teraz używać funkcji keyframesWithSpline do interpolowania dowolnej wartości wymiaru N za pomocą linii monotonnych. Jest to szczególnie przydatne w przypadku interpolowania wartości pozycji, takich jak Offset, IntOffset czy DpOffset. Dodano jako eksperymentalny interfejs API.

Poprawki błędów

  • Dodano obsługę mechanizmu renderowania dla gradientu automatycznego w ArcLine. (I4d5bb)
  • Zaimplementuj kod równa się i kod skrótu dla funkcji PageSize.Fixed. (Ie3ede, b/300134276)
  • Napraw problem ze zgodnością plików binarnych ze zmianą wstawienia okna. (IEE695).
  • Usuń podstawową warstwę materiałową z elementu Material3/przycisku, ponieważ bez niego mikrotesty porównawcze wykazują lepszą skuteczność. (I55555)

Wersja 1.6.0-alpha08

18 października 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha08 została zwolniona. Wersja 1.6.0-alfa08 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Wycofano pole KeyframesSpecConfig#with na rzecz zasady KeyframesSpecConfig#using, która zachowuje wzorzec konstruktora. (I1d769).

Wersja 1.6.0-alpha07

4 października 2023 roku

Usługa androidx.compose.animation:animation-*:1.6.0-alpha07 została zwolniona. Wersja 1.6.0-alfa07 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Stałe i przewijane karty mają teraz warianty główne i dodatkowe. Są one prawidłowo zmapowane na kolor i działanie wskaźników zgodnie z definicją w Material3.
  • PrimaryScrollableTabRow i SecondaryScrollableTabRow udostępniają teraz stan przewijania. (Iec8f5, b/260572337)

Wersja 1.6.0-alpha06

20 września 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha06 została zwolniona. Wersja 1.6.0-alfa06 zawiera te zatwierdzenia.

Wersja 1.6.0-alpha05

6 września 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha05 została zwolniona. Wersja 1.6.0-alfa05 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodaliśmy funkcję PathEasing, by umożliwić podawanie dowolnej ścieżki do krzywej wygładzania. (Idb4b9)

Wersja 1.6.0-alpha04

23 sierpnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha04 została zwolniona. Wersja 1.6.0-alfa04 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Aby umożliwić deweloperom kontrolowanie postępu przenoszenia, dodaj SeekableTransitionState. (I8E69D)

Wersja 1.6.0-alpha03

9 sierpnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha03 została zwolniona. Wersja 1.6.0-alfa03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy typ przejścia wejścia/wyjścia, który skaluje zawartość w zależności od rozmiaru kontenera animacji w trakcie wprowadzania/wyjścia wyjdź z animacji. LookaheadScope Funkcje kompozycyjne i interfejs są teraz stabilne. (Ifb2ce)

Wersja 1.6.0-alpha02

26 lipca 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha02 została zwolniona. Wersja 1.6.0-alfa02 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy ExitTransition.Hold do wyświetlania treści wychodzących w AnimatedContent do czasu, aż zostaną wyświetlone zarówno Enter zakończenie przejścia. (I5984f)
  • Dodatkowe adnotacje do określania dozwolonych danych wejściowych do elementów kompozycyjnych (I51109)

Wersja 1.6.0-alpha01

21 czerwca 2023 r.

Usługa androidx.compose.animation:animation-*:1.6.0-alpha01 została zwolniona. Wersja 1.6.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

  • Włącz pełną integrację Modifier.animateContentSize i AnimatedVisibility z systemem podglądu, zgłaszając rozmiar docelowy w przebiegu podglądu.

Zmiany interfejsu API

  • Nowa usługa w usłudze IntrinsincMeasureScope i jej implementacje (np. MeasureScope) do wskazywania, czy bieżący pomiar jest przebiegiem pozytywnie. (I7a812)

Poprawki błędów

  • Usunięto przydziały ze wiosennych animacji. (IE9431)
  • nazwa parametru wartości elementu Enum.valueOf zmieniona (Ia9b89)
  • więcej zgłoszonych wyjątków od wartości enum (I818fe)

Wersja 1.5

Wersja 1.5.4

18 października 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.4 została zwolniona. Wersja 1.5.4 zawiera te zatwierdzenia.

Wersja 1.5.3

4 października 2023 roku

Usługa androidx.compose.animation:animation-*:1.5.3 została zwolniona. Ta wersja nie zawiera zmian

Wersja 1.5.2

27 września 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.2 została zwolniona. Wersja 1.5.2 zawiera te zatwierdzenia.

Wersja 1.5.1

6 września 2023 r.

Usługa androidx.compose.foundation:foundation-*:1.5.1 została zwolniona. Wersja 1.5.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Poprawiono pola tekstowe przedstawiające klawiaturę i można je było edytować, gdy readOnly ma wartość prawda. Rozwiązaliśmy też problem z klawiaturą, która nie wyświetlała się, gdy zasada readOnly po zaznaczeniu została zmieniona z „prawda” na „fałsz”. (I34a19, b/246909589)

Wersja 1.5.1

6 września 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.1 została zwolniona. Wersja 1.5.1 zawiera te zatwierdzenia.

Wersja 1.5.0

9 sierpnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0 została zwolniona. Wersja 1.5.0 zawiera te zatwierdzenia.

Wersja 1.5.0-rc01

26 lipca 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-rc01 została zwolniona. Wersja 1.5.0-rc01 zawiera te zatwierdzenia.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że wywołanie funkcji .value w stanie podstawowym (takim jak MutableIntState) powodowało wyświetlenie ostrzeżenia o LN z nieprawidłową poprawką. Inspekcja będzie teraz zalecać migrację do właściwej usługi. (Iba953, b/287279257)

  • Dostępna jest opcjonalna kontrola, która zaleca migrację wywołań mutableStateOf() do odpowiednich typów specjalistycznych obiektów podstawowych. Identyfikator linta to AutoboxingStateCreation. Wcześniej ta kontrola była domyślnie włączona we wszystkich projektach. Aby zobaczyć to ostrzeżenie w edytorze Androida Studio oraz w danych wyjściowych projektu lint, zmień jego wagę z informacyjnej na ostrzeżenie (lub wyższe), zadeklarując warning "AutoboxingStateCreation" w konfiguracji build.gradle lub build.gradle.kts modułu, jak pokazano na przykładzie (I34f7e):

        android {
            lint {
                warning "AutoboxingStateCreation"
            }
            ...
        }
    

Wersja 1.5.0-beta03

28 czerwca 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-beta03 została zwolniona. Wersja 1.5.0-beta03 zawiera te zatwierdzenia.

Wersja 1.5.0-beta02

7 czerwca 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-beta02 została zwolniona. Wersja 1.5.0-beta02 zawiera te zatwierdzenia.

Wersja 1.5.0-beta01

24 maja 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-beta01 została zwolniona. Wersja 1.5.0-beta01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Usunięto alokacje w zmianie kompozycji, animacji kolorów i funkcji AndroidComposeView (Ib2bfa).

Poprawki błędów

  • Usunięto przydziały ze wiosennych animacji (Ie9431)

Wersja 1.5.0-alpha04

10 maja 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-alpha04 została zwolniona. Wersja 1.5.0-alfa04 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Usługa ContentKey jest teraz obsługiwana w przeglądarce AnimatedContent, aby zapewnić większą kontrolę nad momentem przejścia. (IC069b)

Wersja 1.5.0-alpha03

19 kwietnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-alpha03 została zwolniona. Wersja 1.5.0-alfa03 zawiera te zatwierdzenia.

Nowe funkcje

  • Nowe domyślne zachowanie dla funkcji SubcomposeLayout w aplikacji LookaheadScope. Dzięki niej panele SubcomposeLayouts, które nie mają przedziałów warunkowych (np.TabRow, Scaffold, BoxWithConstraints itp.), będą dobrze działać z animacjami typu „widok z wyprzedzeniem”.

Zmiany interfejsu API

  • Nowa domyślna wartość intermediateMeasurePolicy, która wykorzystuje ponownie zasadę pomiaru z przebiegu z wyprzedzeniem, zezwala podtypom SubcomposeLayout bez przedziałów warunkowych, takim jak Scaffold, TabRow i BoxWithConstraints, domyślnie na współpracę z podglądem z wyprzedzeniem. (Id84c8).
  • Zmień nazwę zabawy w przyrostku na togetherWith, aby łączyć przejścia między wejściami i wyjściami. Nowy użytkownik AnimatedContentScope jako odbiornik treści lambda. (IC39ae).

Wersja 1.5.0-alpha02

5 kwietnia 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-alpha02 została zwolniona. Wersja 1.5.0-alfa02 zawiera te zatwierdzenia.

Nowe funkcje

  • Nowy eksperymentalny interfejs API do obsługi wyszukiwania z wyprzedzeniem w SubcomposeLayout. Dzięki temu SubcomposeLayout będzie działać prawidłowo w LookaheadScope. Wkrótce udostępnimy więcej gotowej obsługi do określonych podtypów obiektu SubcomposeLayout.

Zmiany interfejsu API

  • Nowy interfejs API SubcomposeLayout, który wymaga dodatkowej zasady dotyczącej pomiarów pośrednich w obsłudze logiki pomiaru/układu podczas czyli rysowanie z wyprzedzeniem. (I017d3)

Wersja 1.5.0-alpha01

22 marca 2023 r.

Usługa androidx.compose.animation:animation-*:1.5.0-alpha01 została zwolniona. Wersja 1.5.0-alfa01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Interfejsy API AnimatedContent są teraz stabilne, a nazwa AnimatedContentScope została zmieniona na AnimatedContentTransitionScope. scaleIn i scaleOut to teraz stabilne interfejsy API. (Iaf54e).

Wersja 1.4

Wersja 1.4.3

3 maja 2023 r.

androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3 i androidx.compose.animation:animation-graphics:1.4.3 zostały opublikowane bez zmian (tylko skompletowanie wersji).

Wersja 1.4.2

19 kwietnia 2023 r.

androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2 i androidx.compose.animation:animation-graphics:1.4.2 zostały udostępnione bez zmian. Wersja 1.4.2 zawiera te zatwierdzenia.

Wersja 1.4.1

5 kwietnia 2023 r.

androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1 i androidx.compose.animation:animation-graphics:1.4.1 zostały udostępnione bez zmian. Wersja 1.4.1 zawiera te zatwierdzenia.

Wersja 1.4.0

22 marca 2023 r.

androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0 i androidx.compose.animation:animation-graphics:1.4.0 zostały udostępnione. Wersja 1.4.0 zawiera te zatwierdzenia.

Ważne zmiany wprowadzone od wersji 1.3.0

  • Etykieta narzędzi jest obsługiwana w rememberInfiniteTransition i wszystkich funkcjach rozszerzeń w InfiniteTransition i przejściu (np. InfiniteTransition#animateColor) (I56ef7)

Wersja 1.4.0-rc01

8 marca 2023 r.

androidx.compose.animation:animation:1.4.0-rc01, androidx.compose.animation:animation-core:1.4.0-rc01 i androidx.compose.animation:animation-graphics:1.4.0-rc01 zostały udostępnione bez zmian. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.

Wersja 1.4.0-beta02

22 lutego 2023 roku

androidx.compose.animation:animation:1.4.0-beta02, androidx.compose.animation:animation-core:1.4.0-beta02 i androidx.compose.animation:animation-graphics:1.4.0-beta02 zostały udostępnione bez zmian. Wersja 1.4.0-beta02 zawiera te zatwierdzenia.

Wersja 1.4.0-beta01

8 lutego 2023 r.

androidx.compose.animation:animation:1.4.0-beta01, androidx.compose.animation:animation-core:1.4.0-beta01 i androidx.compose.animation:animation-graphics:1.4.0-beta01 zostały udostępnione bez zmian. Wersja 1.4.0-beta01 zawiera te zatwierdzenia.

Wersja 1.4.0-alpha05

25 stycznia 2023 r.

androidx.compose.animation:animation:1.4.0-alpha05, androidx.compose.animation:animation-core:1.4.0-alpha05 i androidx.compose.animation:animation-graphics:1.4.0-alpha05 zostały udostępnione. Wersja 1.4.0-alfa05 zawiera te zatwierdzenia.

Zmiany

  • Brak zmian w bibliotekach animacji od ostatniej wersji alfa – tylko zwiększenie liczby wersji

Wersja 1.4.0-alpha04

11 stycznia 2023 r.

androidx.compose.animation:animation:1.4.0-alpha04, androidx.compose.animation:animation-core:1.4.0-alpha04 i androidx.compose.animation:animation-graphics:1.4.0-alpha04 zostały udostępnione. Wersja 1.4.0-alfa04 zawiera te zatwierdzenia.

Nowe funkcje

  • Etykieta narzędzi jest obsługiwana w rememberInfiniteTransition i wszystkich funkcjach rozszerzeń w InfiniteTransition i Transition (np. InfiniteTransition#animateColor) (I56ef7)

Zmiany interfejsu API

  • Interfejsy API InfiniteTransition#TransitionAnimationState i InfiniteTransition#animations są teraz publiczne. (I36682).

Wersja 1.4.0-alpha03

7 grudnia 2022 r.

androidx.compose.animation:animation:1.4.0-alpha03, androidx.compose.animation:animation-core:1.4.0-alpha03 i androidx.compose.animation:animation-graphics:1.4.0-alpha03 zostały udostępnione. Wersja 1.4.0-alfa03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • W testach interfejsu użytkownika z użyciem reguły tworzenia kontynuacje wznawiane w ramach wywołań zwrotnych withFrameNanos będą wysyłane dopiero po zakończeniu wykonywania wszystkich wywołań zwrotnych klatek. Odpowiada to działaniu funkcji tworzenia wiadomości przy normalnym działaniu. Testy, które bazują na starym sposobie działania, mogą się jednak nie udać. Powinno to mieć wpływ tylko na kod, który bezpośrednio wywołuje withFrameNanos lub withFrameMillis, i ma logikę poza wywołaniem zwrotnym przekazywaną do tych funkcji, które być może trzeba przenieść w obrębie wywołań zwrotnych. Przykłady zmian znajdziesz w tej liście zmian.
  • Do konstruktora i funkcji fabrycznej TestMonotonicFrameClock dodano opcjonalny parametr onPerformTraversals: (Long) -> Unit w celu uruchamiania kodu po wywołaniach zwrotnych withFrameNanos, ale przed wznowieniem działania wywołującego współrzędne. (Idb413, b/254115946, b/222093277, b/255802670)
  • Nowy parametr w usłudze AnimatedContent etykiety narzędzi (Iebe2d)

Wersja 1.4.0-alpha02

9 listopada 2022 r.

androidx.compose.animation:animation:1.4.0-alpha02, androidx.compose.animation:animation-core:1.4.0-alpha02 i androidx.compose.animation:animation-graphics:1.4.0-alpha02 zostały udostępnione. Wersja 1.4.0-alfa02 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodaj ToolingState, aby umożliwić narzędziom do zmiany wewnętrznych stanów funkcji kompozycyjnej (Ie6614)

Wersja 1.4.0-alpha01

24 października 2022 r.

androidx.compose.animation:animation:1.4.0-alpha01, androidx.compose.animation:animation-core:1.4.0-alpha01 i androidx.compose.animation:animation-graphics:1.4.0-alpha01 zostały udostępnione. Wersja 1.4.0-alfa01 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawianie nieprawidłowej animacji przerwy w projekcie AnimatedContent (b/238662479)

Wersja 1.3

Wersja 1.3.3

11 stycznia 2023 r.

androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3 i androidx.compose.animation:animation-graphics:1.3.3 zostały udostępnione. Wersja 1.3.3 zawiera te zatwierdzenia.

  • Brak zmian od wersji 1.3.2.

Wersja 1.3.2

7 grudnia 2022 r.

androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2 i androidx.compose.animation:animation-graphics:1.3.2 zostały udostępnione. Wersja 1.3.2 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizowano, aby zapewnić obsługę androidx.compose.ui 1.3.2

Wersja 1.3.1

9 listopada 2022 r.

androidx.compose.animation:animation:1.3.1, androidx.compose.animation:animation-core:1.3.1 i androidx.compose.animation:animation-graphics:1.3.1 zostały udostępnione. Wersja 1.3.1 zawiera te zatwierdzenia.

Wersja 1.3.0

24 października 2022 r.

androidx.compose.animation:animation:1.3.0, androidx.compose.animation:animation-core:1.3.0 i androidx.compose.animation:animation-graphics:1.3.0 zostały udostępnione. Wersja 1.3.0 zawiera te zatwierdzenia.

Ważne zmiany wprowadzone od wersji 1.2.0

  • Nowy zestaw funkcji wygładzania jest stabilny

Wersja 1.3.0-rc01

5 października 2022 r.

androidx.compose.animation:animation:1.3.0-rc01, androidx.compose.animation:animation-core:1.3.0-rc01 i androidx.compose.animation:animation-graphics:1.3.0-rc01 zostały udostępnione. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.

Wersja 1.3.0-beta03

21 września 2022 r.

androidx.compose.animation:animation:1.3.0-beta03, androidx.compose.animation:animation-core:1.3.0-beta03 i androidx.compose.animation:animation-graphics:1.3.0-beta03 zostały udostępnione. Wersja 1.3.0-beta03 zawiera te zatwierdzenia.

  • Brak zmian od wersji 1.3.0-beta02.

Wersja 1.3.0-beta02

7 września 2022 roku

androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02 i androidx.compose.animation:animation-graphics:1.3.0-beta02 zostały udostępnione. Wersja 1.3.0-beta02 zawiera te zatwierdzenia.

  • Z opcji kompilatora usunięto plik Kotlin.experimental, ponieważ został on usunięty

Wersja 1.3.0-beta01

24 sierpnia 2022 r.

androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01 i androidx.compose.animation:animation-graphics:1.3.0-beta01 zostały udostępnione. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.

Wersja 1.3.0-alfa03

10 sierpnia 2022 r.

androidx.compose.animation:animation:1.3.0-alpha03, androidx.compose.animation:animation-core:1.3.0-alpha03 i androidx.compose.animation:animation-graphics:1.3.0-alpha03 zostały udostępnione. Wersja 1.3.0-alfa03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy parametr w usługach Crossfade, animateAsState i Animatable dla etykiety narzędzi (Iac08a)
  • Dodaliśmy funkcję atFraction do definiowania klatek kluczowych w ułamku, a nie w określonym czasie. (I20c76, b/232059455)

Wersja 1.3.0-alfa02

27 lipca 2022 roku

androidx.compose.animation:animation:1.3.0-alpha02, androidx.compose.animation:animation-core:1.3.0-alpha02 i androidx.compose.animation:animation-graphics:1.3.0-alpha02 zostały udostępnione. Wersja 1.3.0-alfa02 zawiera te zatwierdzenia.

Wersja 1.3.0-alpha01

29 czerwca 2022 r.

androidx.compose.animation:animation:1.3.0-alpha01, androidx.compose.animation:animation-core:1.3.0-alpha01 i androidx.compose.animation:animation-graphics:1.3.0-alpha01 zostały udostępnione. Wersja 1.3.0-alfa01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy obiekt LookaheadLayout, który obsługuje przejście z wyprzedzeniem przed rzeczywistym wskaźnikiem lub układem. Pozwala to na wstępne obliczenie układu po jego zmianie, a jednocześnie umożliwia użycie obliczonego wcześniej rozmiaru lub pozycji do animowania rozmiaru i pozycji w kierunku celu, a pomiar lub układ po wyliczeniu. SubcomposeLayouts nie są jeszcze obsługiwane, ale zostaną udostępnione w nadchodzącej wersji. (I477f5)

Wersja 1.2

Wersja 1.2.1

10 sierpnia 2022 r.

androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1 i androidx.compose.animation:animation-graphics:1.2.1 zostały udostępnione. Wersja 1.2.1 zawiera te zatwierdzenia.

Wersja 1.2.0

27 lipca 2022 roku

androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0 i androidx.compose.animation:animation-graphics:1.2.0 zostały udostępnione. Wersja 1.2.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.1.0

  • Animacja tworzenia wiadomości obsługuje teraz „Skalę czasu trwania animacji” w Opcji programisty.
  • Duży wybór nowych eksperymentalnych krzywych wygładzania.
  • AnimatedImageVector obsługuje teraz repeatCount i repeatMode

Wersja 1.2.0-rc03

29 czerwca 2022 r.

androidx.compose.animation:animation:1.2.0-rc03, androidx.compose.animation:animation-core:1.2.0-rc03 i androidx.compose.animation:animation-graphics:1.2.0-rc03 zostały udostępnione. Wersja 1.2.0-rc03 zawiera te zatwierdzenia.

  • Brak zmian od wersji 1.2.0-rc02.

Wersja 1.2.0-rc02

22 czerwca 2022 r.

androidx.compose.animation:animation:1.2.0-rc02, androidx.compose.animation:animation-core:1.2.0-rc02 i androidx.compose.animation:animation-graphics:1.2.0-rc02 zostały udostępnione. Wersja 1.2.0-rc02 zawiera te zatwierdzenia.

Poprawki błędów

  • Usunięto adnotację ExperimentalEasingApi z funkcji wygładzania (Ied441).

Wersja 1.2.0-rc01

15 czerwca 2022 r.

androidx.compose.animation:animation:1.2.0-rc01, androidx.compose.animation:animation-core:1.2.0-rc01 i androidx.compose.animation:animation-graphics:1.2.0-rc01 zostały udostępnione. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Interfejsy w bibliotekach tworzenia wiadomości są teraz tworzone przy użyciu domyślnych metod interfejsu jdk8 (I5bcf1)

Wersja 1.2.0-beta03

1 czerwca 2022 r.

androidx.compose.animation:animation:1.2.0-beta03, androidx.compose.animation:animation-core:1.2.0-beta03 i androidx.compose.animation:animation-graphics:1.2.0-beta03 zostały udostępnione. Wersja 1.2.0-beta03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodano eksperymentalne krzywe wygładzania do animacji (I64a38)

Wersja 1.2.0-beta02

18 maja 2022 r.

androidx.compose.animation:animation:1.2.0-beta02, androidx.compose.animation:animation-core:1.2.0-beta02 i androidx.compose.animation:animation-graphics:1.2.0-beta02 zostały udostępnione. Wersja 1.2.0-beta02 zawiera te zatwierdzenia.

Wersja 1.2.0-beta01

11 maja 2022 roku

androidx.compose.animation:animation:1.2.0-beta01, androidx.compose.animation:animation-core:1.2.0-beta01 i androidx.compose.animation:animation-graphics:1.2.0-beta01 zostały udostępnione. Wersja 1.2.0-beta01 zawiera te zatwierdzenia.

  • Pierwsza wersja beta 1.2. Od ostatniej wersji alfa nie ma żadnych zmian.

Wersja 1.2.0-alpha08

20 kwietnia 2022 r.

androidx.compose.animation:animation:1.2.0-alpha08, androidx.compose.animation:animation-core:1.2.0-alpha08 i androidx.compose.animation:animation-graphics:1.2.0-alpha08 zostały udostępnione. Wersja 1.2.0-alfa08 zawiera te zatwierdzenia.

Wersja 1.2.0-alpha07

6 kwietnia 2022 roku

androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07 i androidx.compose.animation:animation-graphics:1.2.0-alpha07 zostały udostępnione. Wersja 1.2.0-alfa07 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • AnimatedImageVector obsługuje teraz repeatCount i repeatMode (Ia3e75, b/199304067)

Wersja 1.2.0-alpha06

23 marca 2022 r.

androidx.compose.animation:animation:1.2.0-alpha06, androidx.compose.animation:animation-core:1.2.0-alpha06 i androidx.compose.animation:animation-graphics:1.2.0-alpha06 zostały udostępnione. Wersja 1.2.0-alfa06 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Zaktualizowaliśmy analizę analizy obiektów rysowanych wektorowych, aby zapewnić obsługę automatycznego odbicia lustrzanego w celu odwrócenia zawartości w elemencie VectorPainter, jeśli obecny układ to RTL. (I79cd9, b/185760237)

Poprawki błędów

  • Zaktualizowano interfejsy API grafiki wektorowej, tak aby używały prawidłowej adnotacji kompozycyjnej @VectorComposable zamiast @UiComposable (I942bc)

Wersja 1.2.0-alpha05

9 marca 2022 r.

androidx.compose.animation:animation:1.2.0-alpha05, androidx.compose.animation:animation-core:1.2.0-alpha05 i androidx.compose.animation:animation-graphics:1.2.0-alpha05 zostały udostępnione. Wersja 1.2.0-alfa05 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Hurra! Obsługa animacji tworzenia wiadomości „Skala czasu trwania animatora” w Opcji programisty. (I5a4fc, b/161675988)

Wersja 1.2.0-alfa04

23 lutego 2022 r.

androidx.compose.animation:animation:1.2.0-alpha04, androidx.compose.animation:animation-core:1.2.0-alpha04 i androidx.compose.animation:animation-graphics:1.2.0-alpha04 zostały udostępnione. Wersja 1.2.0-alfa04 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa03

9 lutego 2022 r.

androidx.compose.animation:animation:1.2.0-alpha03, androidx.compose.animation:animation-core:1.2.0-alpha03 i androidx.compose.animation:animation-graphics:1.2.0-alpha03 zostały udostępnione. Wersja 1.2.0-alfa03 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa02

26 stycznia 2022 r.

androidx.compose.animation:animation:1.2.0-alpha02, androidx.compose.animation:animation-core:1.2.0-alpha02 i androidx.compose.animation:animation-graphics:1.2.0-alpha02 zostały udostępnione. Wersja 1.2.0-alfa02 zawiera te zatwierdzenia.

Wersja 1.2.0-alpha01

12 stycznia 2022 r.

androidx.compose.animation:animation:1.2.0-alpha01, androidx.compose.animation:animation-core:1.2.0-alpha01 i androidx.compose.animation:animation-graphics:1.2.0-alpha01 zostały udostępnione. Wersja 1.2.0-alfa01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Aby wczytać plik zasobów <animated-vector>, użyj AnimatedImageVector.animatedVectorResource zamiast animatedVectorResource.
    • Aby wygenerować tag AnimatedImageVector, użyj rememberAnimatedVectorResource zamiast AnimatedImageVector#painterFor. (I9c300)

Poprawki błędów

  • Dodano metody toString do obiektów Animatable i AnimationResult. (ICD3a6).

Aktualizacje zależności

  • Teraz zależy od Kotlin 1.6.10.

Wersja 1.1

Wersja 1.1.1

23 lutego 2022 r.

androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1 i androidx.compose.animation:animation-graphics:1.1.1 zostały udostępnione. Wersja 1.1.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Napraw NullPointerException pod adresem androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059, b/206677462)
  • Naprawianie awarii spowodowanej przez zawartość schowka przy odczytywaniu z do schowka na Androidzie. (I06020, b/197769306)
  • Poprawiono RTL w LazyVerticalGrid (aosp/1931080, b/207510535)

Wersja 1.1.0

9 lutego 2022 r.

androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0 i androidx.compose.animation:animation-graphics:1.1.0 zostały udostępnione. Wersja 1.1.0 zawiera te zatwierdzenia.

Ważne zmiany wprowadzone od wersji 1.0.0

  • Stabilna obsługa efektu przewijania w Androidzie 12.
  • Ulepszenia rozmiaru docelowego elementu dotykowego
  • Pamiętaj, że w przypadku Compose 1.0 komponenty Material mają rozszerzać obszar układu, aby zapewnić zgodność z wytycznymi dotyczącymi ułatwień dostępu Material Design rozmiar docelowego elementu dotykowego. Na przykład docelowy element dotykowy przycisku zostanie powiększony do minimalnego rozmiaru 48 x 48 dp, nawet jeśli ustawisz mniejszy rozmiar przycisku. Dzięki temu interfejs Compose Material ma takie samo zachowanie jak komponenty stylu Material Design, co zapewnia spójne zachowanie w przypadku połączenia widoków i tworzenia wiadomości. Ta zmiana zagwarantuje też, że w przypadku tworzenia UI z użyciem komponentów Compose Material, minimalne wymagania dotyczące ułatwień dostępu docelowych elementów dotykowych będą spełnione.
  • Stabilna obsługa kolejki nawigacyjnej
  • Przeniesienie niektórych wcześniej eksperymentalnych interfejsów API do wersji stabilnej
  • pomoc dotycząca nowszych wersji Kotlin,

Wersja 1.1.0-rc03

26 stycznia 2022 r.

androidx.compose.animation:animation:1.1.0-rc03, androidx.compose.animation:animation-core:1.1.0-rc03 i androidx.compose.animation:animation-graphics:1.1.0-rc03 zostały udostępnione. Wersja 1.1.0-rc03 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizowano, aby obsługiwała Material 1.1.0-rc03

Wersja 1.1.0-rc01

15 grudnia 2021 roku

androidx.compose.animation:animation:1.1.0-rc01 i androidx.compose.animation:animation-core:1.1.0-rc01 zostały udostępnione. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Aby wczytać plik zasobów <animated-vector>, użyj AnimatedImageVector.animatedVectorResource zamiast animatedVectorResource.
    • Aby wygenerować tag AnimatedImageVector, użyj rememberAnimatedVectorResource zamiast AnimatedImageVector#painterFor. (I9c300)

Wersja 1.1.0-beta04

1 grudnia 2021 r.

androidx.compose.animation:animation:1.1.0-beta04, androidx.compose.animation:animation-core:1.1.0-beta04 i androidx.compose.animation:animation-graphics:1.1.0-beta04 zostały udostępnione. Wersja 1.1.0-beta04 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano, aby była zgodna z platformą Kotlin 1.6.0

Wersja 1.1.0-beta03

17 listopada 2021 r.

androidx.compose.animation:animation:1.1.0-beta03, androidx.compose.animation:animation-core:1.1.0-beta03 i androidx.compose.animation:animation-graphics:1.1.0-beta03 zostały udostępnione. Wersja 1.1.0-beta03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodano nowy modyfikator Modifier.onPlaced, który zezwala zmiany miejsca docelowego. Dodatkowe zmiany w: przesunięcia modyfikatora podrzędnego można więc określić w oparciu o zaobserwowaną zmianę miejsca docelowego. (I558fd).
  • Nowa obsługa ContentKey w przenikaniu. ContentKey będzie używany do sprawdzania równości w systemie animacji. Dlatego niestandardowe różnice stanów można osiągnąć za pomocą odpowiednie dla różnych stanów.

    ContentKey będzie również używany jako klucz do zapisywania & przywrócić zawartość. (I2e055, b/197907070)

Wersja 1.1.0-beta02

3 listopada 2021 r.

androidx.compose.animation:animation:1.1.0-beta02, androidx.compose.animation:animation-core:1.1.0-beta02 i androidx.compose.animation:animation-graphics:1.1.0-beta02 zostały udostępnione. Wersja 1.1.0-beta02 zawiera te zatwierdzenia.

Poprawki błędów

  • Nowe interfejsy API animacji do obsługi narzędzi. Mówiąc konkretnie, ani przy użyciu narzędzi do sprawdzania animacji. ich konfiguracje w Przejścia. (I4116e)

Wersja 1.1.0-beta01

27 października 2021 roku

androidx.compose.animation:animation:1.1.0-beta01, androidx.compose.animation:animation-core:1.1.0-beta01 i androidx.compose.animation:animation-graphics:1.1.0-beta01 zostały udostępnione. Wersja 1.1.0-beta01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowe interfejsy API animacji do obsługi narzędzi. Mówiąc konkretnie, ani przy użyciu narzędzi do sprawdzania animacji. ich konfiguracje w Przejścia. (I4116e)

Wersja 1.1.0-alpha06

13 października 2021 r.

androidx.compose.animation:animation:1.1.0-alpha06, androidx.compose.animation:animation-core:1.1.0-alpha06 i androidx.compose.animation:animation-graphics:1.1.0-alpha06 zostały udostępnione. Wersja 1.1.0-alfa06 zawiera te zatwierdzenia.

Wersja 1.1.0-alpha05

29 września 2021 r.

androidx.compose.animation:animation:1.1.0-alpha05, androidx.compose.animation:animation-core:1.1.0-alpha05 i androidx.compose.animation:animation-graphics:1.1.0-alpha05 zostały udostępnione. Wersja 1.1.0-alfa05 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • EnterTransition, ExitTransition i niektóre z Interfejsy API typu AnimatedVisibility zostały wprowadzone stabilnie. Funkcja MutableTransitionState.isIdle też nie jest już eksperymentalna. (I5072D)

  • Zmiana niezbędna: wartości lambda w fabrykach Enter/Exittransit. zostały przeniesione na ostatnią pozycję na liście parametrów. (I5072D)

Wersja 1.1.0-alfa04

15 września 2021 r.

androidx.compose.animation:animation:1.1.0-alpha04, androidx.compose.animation:animation-core:1.1.0-alpha04 i androidx.compose.animation:animation-graphics:1.1.0-alpha04 zostały udostępnione. Wersja 1.1.0-alfa04 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa03

1 września 2021 roku

androidx.compose.animation:animation:1.1.0-alpha03, androidx.compose.animation:animation-core:1.1.0-alpha03 i androidx.compose.animation:animation-graphics:1.1.0-alpha03 zostały udostępnione. Wersja 1.1.0-alfa03 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano funkcję Utwórz 1.1.0-alpha03, aby bazowała na Kotlinie 1.5.30. (I74545)

Wersja 1.1.0-alfa02

18 sierpnia 2021 r.

androidx.compose.animation:animation:1.1.0-alpha02, androidx.compose.animation:animation-core:1.1.0-alpha02 i androidx.compose.animation:animation-graphics:1.1.0-alpha02 zostały udostępnione. Wersja 1.1.0-alfa02 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Parametr StartOffset jest teraz obsługiwany w powtarzalnych i nieskończoność powtarzania, aby opóźnić czas rozpoczęcia lub – przewiń animację do przodu, zanim się rozpocznie. To przesunięcie czasu rozpoczęcia się nie powtarza (Ic679f, b/195079908)
  • Nowe przejście Enter/Exit dla skali. Może być używana w połączeniu z innymi opcjami. z innymi typami przejść. (I372da, b/191325593)

Wersja 1.1.0-alpha01

4 sierpnia 2021 r.

androidx.compose.animation:animation:1.1.0-alpha01, androidx.compose.animation:animation-core:1.1.0-alpha01 i androidx.compose.animation:animation-graphics:1.1.0-alpha01 zostały udostępnione. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • AnimatedImageVector i powiązane z nim interfejsy API są teraz w nowej wersji androidx.compose.animation:animation-graphics. (I60873)

Poprawki błędów

Wersja 1.0

Wersja 1.0.5

3 listopada 2021 r.

androidx.compose.animation:animation:1.0.5 i androidx.compose.animation:animation-core:1.0.5 zostały udostępnione. Wersja 1.0.5 zawiera te zatwierdzenia.

Poprawki błędów

  • Usunięto problem ze śledzeniem awarii w instancjach originStateOf. (Aosp/1792247)

Wersja 1.0.4

13 października 2021 r.

androidx.compose.animation:animation:1.0.4 i androidx.compose.animation:animation-core:1.0.4 zostały udostępnione. Wersja 1.0.4 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano na podstawie usługi Kotlin 1.5.31

Wersja 1.0.3

29 września 2021 r.

androidx.compose.animation:animation:1.0.3 i androidx.compose.animation:animation-core:1.0.3 zostały udostępnione. Wersja 1.0.3 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano na podstawie usługi Kotlin 1.5.30

Wersja 1.0.2

1 września 2021 roku

androidx.compose.animation:animation:1.0.2 i androidx.compose.animation:animation-core:1.0.2 zostały udostępnione. Wersja 1.0.2 zawiera te zatwierdzenia.

Zaktualizowano, aby obsługiwała wersję 1.0.2 Utwórz. Funkcja Compose 1.0.2 jest nadal zgodna z Kotlin 1.5.21.

Wersja 1.0.1

4 sierpnia 2021 r.

androidx.compose.animation:animation:1.0.1 i androidx.compose.animation:animation-core:1.0.1 zostały udostępnione. Wersja 1.0.1 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano w zależności od systemu Kotlin 1.5.21.

Wersja 1.0.0

28 lipca 2021 roku

androidx.compose.animation:animation:1.0.0 i androidx.compose.animation:animation-core:1.0.0 zostały udostępnione. Wersja 1.0.0 zawiera te zatwierdzenia.

Główne funkcje 1.0.0

To jest pierwsza stabilna wersja Compose. Więcej informacji znajdziesz na oficjalnym blogu wersji Compose.

Znane problemy

  • Jeśli korzystasz z Android Studio Bumblebee Canary 4 lub AGP 7.1.0-alpha04/7.1.0-alpha05, może dojść do tej awarii:

      java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
    

    Aby rozwiązać ten problem, tymczasowo zwiększ wartość parametru minSdkVersion w pliku build.gradle do wartości 24 lub nowszej. Ten problem zostanie naprawiony w następnej wersji Androida Studio Bumblebee i AGP 7.1. (b/194289155)

Wersja 1.0.0-rc02

14 lipca 2021 roku

androidx.compose.animation:animation:1.0.0-rc02 i androidx.compose.animation:animation-core:1.0.0-rc02 zostały udostępnione. Wersja 1.0.0-rc02 zawiera te zatwierdzenia.

Wersja 1.0.0-rc01

1 lipca 2021 r.

androidx.compose.animation:animation:1.0.0-rc01 i androidx.compose.animation:animation-core:1.0.0-rc01 zostały udostępnione. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.

Poprawki błędów

  • Przeniesiono InfiniteAnimationPolicy do: androidx.compose.ui:ui (I5eb09, b/160602714)

Wersja 1.0.0-beta09

16 czerwca 2021 r.

androidx.compose.animation:animation:1.0.0-beta09 i androidx.compose.animation:animation-core:1.0.0-beta09 zostały udostępnione. Wersja 1.0.0-beta09 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy element kompozycyjny AnimatedContent. Zarządza swoją treścią zmień ustawienia, używając dostosowywanych elementów ContentTransform jako nowej treści docelowej i opuszcza stronę. Inna kombinacja klawisza Enter i przejść wyjścia, aby uzyskać niestandardowy wygląd, do własnych potrzeb. W ramach przekształcania treści AnimatedContent automatycznie dostosowuje swój rozmiar do treści przychodzących. (I2c3df).
  • Użytkownik ManualFrameClock został usunięty. Jeśli chcesz sterować animacjami, użyj interfejsu composeTestRule.mainClock. (I3c3e8, b/189951065)

Dodane reguły profilu

Ta wersja dodaje reguły profilu do następujących modułów tworzenia wiadomości (I14ed6):

  • androidx.compose.animation,
  • androidx.compose.animation-core,
  • androidx.compose.foundation
  • androidx.compose.foundation-layout
  • androidx.compose.material,
  • androidx.compose.material-ripple,
  • androidx.compose.runtime,
  • androidx.compose.ui,
  • androidx.compose.ui.geometry,
  • androidx.compose.ui.graphics,
  • androidx.compose.ui.tekst
  • androidx.compose.ui.tekst
  • androidx.compose.ui.jednostka
  • androidx.compose.ui.util,

Co to są reguły profilu?

  • Reguły profilu dla biblioteki określa się w pliku tekstowym baseline-prof.txt znajdującym się w katalogu src/main lub podobnym. Plik określa regułę w każdym wierszu, gdzie reguła w tym przypadku jest wzorcem dopasowywania do metod lub klas w bibliotece. Składnia tych reguł jest elementem nadrzędnym w przypadku czytelnego dla człowieka formatu profilu ART, który jest używany, gdy używasz adb shell profman --dump-classes-and-methods .... Reguły te mogą kierować reklamy na metody lub klasy w jednej z dwóch form.

  • Reguła metody będzie miała następujący wzorzec:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • Reguła klasy będzie miała następujący wzorzec:

    <CLASS_DESCRIPTOR>
    
  • <FLAGS> to co najmniej jeden ze znaków H, S i P wskazujących, czy ta metoda ma być oznaczona jako „Przebojowa”, „Uruchomienie” lub „Po uruchomieniu”.

  • <CLASS_DESCRIPTOR> to deskryptor klasy, do której należy wybrana metoda. Na przykład klasa androidx.compose.runtime.SlotTable miałaby deskryptor Landroidx/compose/runtime/SlotTable;.

  • <METHOD_SIGNATURE> to podpis metody. Zawiera nazwę, typy parametrów i typy zwracanych metod. Na przykład metoda fun isPlaced(): Boolean w LayoutNode ma podpis isPlaced()Z.

  • Aby jedna reguła obejmowała wiele metod lub klas, mogą one zawierać symbole wieloznaczne (**, * i ?).

Do czego służą reguły?

  • Metoda z flagą H wskazuje, że jest ona popularna. i należy ją skompilować z wyprzedzeniem.

  • Metoda z flagą S wskazuje, że jest ona wywoływana przy uruchamianiu i należy ją skompilować z wyprzedzeniem, by uniknąć kosztów kompilacji i interpretacji podczas uruchamiania.

  • Metoda z flagą P wskazuje, że jest to metoda, która jest wywoływana po uruchomieniu.

  • Klasa znajdująca się w tym pliku wskazuje, że jest używana podczas uruchamiania i powinna być wstępnie przydzielona na stercie, aby uniknąć kosztów wczytywania klasy.

Jak to działa?

  • Biblioteki mogą definiować reguły, które będą spakowane w artefaktach AAR. Kiedy powstaje aplikacja, która zawiera te artefakty, reguły te są łączone ze sobą, a scalone reguły służą do utworzenia kompaktowego binarnego profilu ART charakterystycznego dla danej aplikacji. ART może następnie wykorzystać ten profil, gdy aplikacja jest zainstalowana na urządzeniach, w celu z wyprzedzeniem skompilowania określonego podzbioru aplikacji w celu poprawy jej wydajności, zwłaszcza przy pierwszym uruchomieniu. Pamiętaj, że nie będzie to miało wpływu na aplikacje z możliwością debugowania.

Wersja 1.0.0-beta08

2 czerwca 2021 r.

androidx.compose.animation:animation:1.0.0-beta08 i androidx.compose.animation:animation-core:1.0.0-beta08 zostały udostępnione. Wersja 1.0.0-beta08 zawiera te zatwierdzenia.

Poprawki błędów

  • Teraz detectDragGesures, detectVerticalGestures i detectHorizontalGestures automatycznie uwzględniają zmianę pozycji, więc nie trzeba wywoływać metody change.consumePositionChange w wywołaniach zwrotnych onDrag (I42fc4, b/185096350, b/187320697).
  • Pole Modifier.onGloballyPositioned() zostało zmienione tak, aby po zastosowaniu wszystkich modyfikatorów raportować współrzędne tego modyfikatora w łańcuchu modyfikatorów, a nie współrzędne układu. Oznacza to, że teraz kolejność modyfikatorów wpływa na to, jakie współrzędne będą podawane w raportach. (Ieb67d, b/177926591)

Wersja 1.0.0-beta07

18 maja 2021 r.

androidx.compose.animation:animation:1.0.0-beta07 i androidx.compose.animation:animation-core:1.0.0-beta07 zostały udostępnione. Wersja 1.0.0-beta07 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy interfejs API AnimatedVisibility, który obsługuje określenie widoczności MutableTransitionState. Umożliwia to również ustawienie stanów animacji zaobserwowano poza obszarem AnimatedVisibility za pomocą currentState i isIdle.
    • Pomoc dotycząca przenoszenia kont podrzędnych
    • Obsługuj niestandardową animację wyjścia/wejścia w animacji. za pomocą AnimationScope.transition
    • Nowy modyfikator AnimateEnterExit jest dostępny dla wszystkich elementów podrzędnych grupy Animacja
    • Wycofaliśmy interfejsy AnimatedVisibility API, które wymagają initiallyVisible (I702f3)

Wersja 1.0.0-beta06

5 maja 2021 roku

androidx.compose.animation:animation:1.0.0-beta06 i androidx.compose.animation:animation-core:1.0.0-beta06 zostały udostępnione. Wersja 1.0.0-beta06 zawiera te zatwierdzenia.

Wersja 1.0.0-beta05

21 kwietnia 2021 r.

androidx.compose.animation:animation:1.0.0-beta05 i androidx.compose.animation:animation-core:1.0.0-beta05 zostały udostępnione. Wersja 1.0.0-beta05 zawiera te zatwierdzenia.

Poprawki błędów

  • pliki AndroidManifest z komponentów ui-test-manifest oraz Narzędzie ui-tooling-data jest teraz zgodne z Androidem 12 (I6f9de, b/184718994)

Wersja 1.0.0-beta04

7 kwietnia 2021 r.

androidx.compose.animation:animation:1.0.0-beta04 i androidx.compose.animation:animation-core:1.0.0-beta04 zostały udostępnione. Wersja 1.0.0-beta04 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Instancje publiczne RowScope, ColumnScope, BoxScope, BoxWithConstraintsScope zostały usunięte. (I4e83e, b/181869067)

Wersja 1.0.0-beta03

24 marca 2021 r.

androidx.compose.animation:animation:1.0.0-beta03 i androidx.compose.animation:animation-core:1.0.0-beta03 zostały udostępnione. Wersja 1.0.0-beta03 zawiera te zatwierdzenia.

Wersja 1.0.0-beta02

10 marca 2021 r.

androidx.compose.animation:animation:1.0.0-beta02 i androidx.compose.animation:animation-core:1.0.0-beta02 zostały udostępnione. Wersja 1.0.0-beta02 zawiera te zatwierdzenia.

Poprawki błędów

  • Egzekwuj ograniczenia dotyczące publicznego korzystania z eksperymentalnych interfejsów API (I6aa29, b/174531520)

Wersja 1.0.0-beta01

24 lutego 2021 r.

androidx.compose.animation:animation:1.0.0-beta01 i androidx.compose.animation:animation-core:1.0.0-beta01 zostały udostępnione. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.

To jest pierwsza wersja beta Compose 1.0.0.

Zmiany interfejsu API

  • Pole InteractionState zostało zastąpione tekstem [Mutable]InteractionSource
    • Interfejsy odpowiadają za wysyłanie / zbieranie zdarzeń interakcji.
    • Zamiast przekazywać interactionState = remember { InteractionState() } do komponentów takich jak Button czy Modifier.clickable(), użyj interactionSource = remember { MutableInteractionSource() }.
    • Zamiast: Interaction.Pressed in interactionState użyj funkcji rozszerzeń w InteractionSource, takich jak InteractionSource.collectIsPressedAsState().
    • W złożonych przypadkach możesz użyć parametru InteractionSource.interactions do obserwowania strumienia interakcji. Więcej informacji znajdziesz w dokumentacji i przykładach InteractionSource.
    • (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
  • smooth ScrollBy i ScrollBy pakiety zostały zmienione na androidx.compose.foundation.gestures.* (I3f7c1, b/175294473)
  • Zmieniono nazwy modyfikatorów rozmiaru. Zmieniono nazwę modyfikatora.width/height/size na requiredWidth/requiredHeight/requiredSize. Zmieniono nazwę metody Modifier.preferredWidth/preferredHeight/preferredSize na szerokość/wysokość/rozmiar. (I5b414)
  • Orientacja została przeniesiona do pakietu podstawowego. Przeniesiono aplikację VelocirtTracker z obszaru ui.gesture do witryny ui.input.pointer. (Iff4a8, b/175294473)
  • AnimationClockObservable i podklasy zostały zmienione usunięto. Element AnimatedFloat został usunięty. (Icde52, b/177457083)
  • Modifier.draggable akceptuje teraz obiekt DraggableState zamiast prostej lambda. możesz utworzyć stan w rememberDraggableState { delta -> }, aby uzyskać takie samo zachowanie jak wcześniej (Ica70f, b/175294473)
  • Interfejsy API animate, clearValue, AnimatedValue zostały usunięte (If27bc, b/177457083)
  • Element AnimationEndReason.Interrupted został usunięty. Anulowanie wyjątku będzie powodować zgłoszenie, jeśli animacja zostanie przerwana. (I2cbbc, b/179695417)
  • Interfejs API TargetAnimation został usunięty. (If47d1, b/177457083)

Wersja 1.0.0-alfa12

10 lutego 2021 r.

androidx.compose.animation:animation:1.0.0-alpha12 i androidx.compose.animation:animation-core:1.0.0-alpha12 zostały udostępnione. Wersja 1.0.0-alfa12 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Modifier.pointerInput wymaga teraz zapamiętania klawiszy, aby wskazać, kiedy współrzędna wykrywania danych wejściowych wskaźnika powinna zostać uruchomiona ponownie zależności. (I849cd)
  • Nazwa granic została zmieniona na DpRect (I4b32a).
  • Ujednolicono nazwę parametru AnimationSpec z animowaną specyfikacją w całym systemie animacji. Ogranicz też ruch przez wejście/wyjście , aby zaakceptować FiniteAnimationSpec. (Ie47c5, b/177457083)
  • Animatable.snapTo i Animatable.stop to teraz funkcje zawieszania (If4288)
  • Podobnie jak poprzednio usunęliśmy funkcję state { 0 } kompozycyjną, a teraz promujemy jej użycie, takie jak remember { mutableStateOf(0) }, usuniemy funkcję savedInstanceState { 0 } kompozycyjną. Zamiast niego użyj parametru rememberSaveable { mutableStateOf(0) }. Zostanie on automatycznie zapisany i przywrócony, jeśli typ użyty w MutableState może być przechowywany w pakiecie. Jeśli do tej pory przekazywano obiekt wygaszacza niestandardowego, teraz musisz użyć nowego przeciążenia funkcji meetSaveable, które zawiera parametr stateSaver. Użycie będzie wyglądać tak: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26, b/177338004)
  • Zaktualizowano podpis metody Crossfade, aby był bardziej spójny z resztą systemu animacji. (IB05ed, b/177457083)
  • Zapamiętano nazwę savedInstanceState(), aby korzystały z ! (I1366e, b/177338004)
  • Nazwa RestorableStateHolder została zmieniona na SaveableStateHolder i została przeniesiona do pakietu androidx.compose.runtime.saveable. Nazwa metody wewnętrznej RestorableStateProvider została zmieniona na SaveableStateProvider. Typ ogólny został usunięty, więc można było przekazywać jako klucz „Dowolny”. Nie są już potrzebne adnotacje eksperymentalne. (I0902e, b/174598702)
  • Zaktualizowano interfejs Modifier.animateContentSize API, aby był spójny z resztą systemu animacji. (I0bf75, b/177457083)
  • Parametr AnimatedValue/Float został wycofany. Użyj Animowana. (I71345, b/177457083)
  • Parametry tapTrackingFilter, DoubleTapStepFilter, longPressConsentFilter i PressIndicaitonTrackingFilter zostały wycofane. Użyj w zamian funkcji Modifier.clickable lub Modifier.pointerInput z funkcją wykrywania gestów. (I6baf9, b/175294473)
  • Wprowadzono kontekst współprogramu InfiniteAnimationPolicy który będzie stosowany w nieskończonych animacjach. Domyślnie nie zasada jest zainstalowana, chyba że przeprowadzasz testy z zastosowaniem ComposeTestRule. (I50ec4, b/151940543)
  • Metody zniszczenia i copy() zostały usunięte z i kilku klas, w których były one rzadko używane. (I26702, b/178659281)
  • Czas odtwarzania animacji nie jest już podawany w nanosekundach (If776a)
  • Artefakt compose:runtime-dispatch został wycofany. MonotonicFrameClock można teraz znaleźć w poleceniach compose:runtime Aplikację AndroidUiDispatcher znajdziesz w polecenia compose:ui. (IB5c36)
  • Dodano Animation.isInfinite i VectorizedAnimationSpec.isInfinite wskazujący, czy animacja jest bez końca. Można go użyć w implementacjach animacji do: obsługiwać takie animacje w specjalny sposób. Na przykład specjalny „czas” pozostało” może pojawić się komunikat. Podczas testów można też anulowano, aby zapobiec oczekiwaniu na bezczynność w nieskończoność. (Iebb05, b/151940543)
  • Jako typu czasu animacji użyj opcji Długi czas zamiast Czas działania (Ie3aa7, b/177420019)

Wersja 1.0.0-alfa11

28 stycznia 2021 roku

androidx.compose.animation:animation:1.0.0-alpha11 i androidx.compose.animation:animation-core:1.0.0-alpha11 zostały udostępnione. Wersja 1.0.0-alfa11 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Przejście na podstawie definicji przejścia zostało wycofane (I0ac57)
  • W przypadku przejścia dodano pole etykiety. i animacje podrzędne do wyświetlania w narzędziach (I619fb)
  • animateAsState to teraz animateFooAsState, typu animowanej zmiennej. np. Float, Dp, Offset itp. (Ie7e25)
  • Nowa funkcja InfiniteTransfer, która działa w dowolnej liczbie ani animacji potomnych. (I1da81).
  • Zmienia interfejsy parametrów stanowych Material w funkcje @Composable, które zwracają wartość State<T>. Dodaje funkcję Animatable.asState(), która ułatwia konwertowanie obiektu Animatable na stan. Zmienia też działanie animacji Elevation na rozszerzenie w trybie zawieszenia w Animatable. (If613c).

Poprawki błędów

  • Interfejsy onCommit, onDispose i onActive zostały wycofane i zastąpione interfejsami SideEffect i DiposableEffect (If760e).
  • Obsługiwany jest stan początkowy w trakcie aktualizacji (Ifd51d)
  • Do obrazów i ikon został dodany parametr Opis treści. Służy do opisania usług ułatwień dostępu (I2ac4c).
  • Nieprawidłowo i kompozytoryzacja() zostały wycofane. Zastąpiono je odpowiednio recomposeScope i ReminderCompositionReference. (I583a8)
  • Czas trwania i czas działania zastąpimy długimi milisekundami, i eliminuje zależność od danych wejściowych wskaźnika. zajęcia. (Ia33b2, b/175142755, b/177420019)
  • klikalne, włączane i klikalne można teraz tworzyć poza kompozycją (I0a130, b/172938345, b/175294473)
  • Wygładzanie zostało zmienione na interfejs funkcjonalny (Ib14e5)
  • Nowa metoda fabryczna items(count: Int) dla zakresu LazyColumn/LazyRow/LazyVerticalGrid. items(items: List) i itemsIndexed(items: List) to teraz funkcje rozszerzeń, więc trzeba je importować ręcznie, gdy są używane. Nowe przeciążenia rozszerzeń dla tablic: items(items: tablica) i itemIndexed(tablica) (I803fc, b/175562574)
  • Wykorzystanie narzędzia TestCoroutineDispatcher w testowaniu (I532b6)
  • Usunięto dane PointerInputData i zmodyfikowano PointerInputChange wszystkie pola PointerInputData. Utworzono zdarzenie PointerInputEvent i PointerInputEventData, bo nie są używane dowolny publiczny interfejs API. (Ifff97, b/175142755)

Wersja 1.0.0-alpha10

13 stycznia 2021 r.

androidx.compose.animation:animation:1.0.0-alpha10 i androidx.compose.animation:animation-core:1.0.0-alpha10 zostały udostępnione. Wersja 1.0.0-alfa10 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Zmodyfikowano prędkość, aby obejmowała składowe i matematyczne operacji. (IB0447)
  • Zmieniono nazwę @ExperimentalTesting na @ExperimentalTestApi na spójne z podobnymi eksperymentalnymi adnotacjami interfejsu API (Ia4502, b/171464963)
  • Zmieniono nazwę pozycji na DpOffset i usunęliśmy getRange() (Ib2dfd).
  • Usunięto publiczny interfejs API Any.identityHashCode() (I025d7).

Poprawki błędów

  • Nowy interfejs API Animatable oparty na współudziale, który zapewnia wzajemną wyłączność między animacjami. Nowa specyfikacja DecayAnimationSpec, która obsługuje wielowymiarową animację rozpadu (I820f2, b/168014930)
  • Ciąg animate() został zastąpiony tekstem animateAsState(), , który zwraca State<T> zamiast T. Dzięki temu skuteczności, ponieważ można zawęzić zakres unieważniania w którym odczytywana jest wartość State. (IB179e)

Wersja 1.0.0-alpha09

16 grudnia 2020 roku

androidx.compose.animation:animation:1.0.0-alpha09 i androidx.compose.animation:animation-core:1.0.0-alpha09 zostały udostępnione. Wersja 1.0.0-alfa09 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Przeniesiono Konwersja Dp.VectorConverter, Position.VectorConverter itd. animacje-core i wycofała stare rozwiązanie VectorConveters (If0c4b).
  • Wprowadziliśmy zupełnie nowy zestaw interfejsów API do przenoszenia z ulepszonymi funkcjami są łatwe w obsłudze i obsługują dynamicznie dodawane animacje celów animacji. Ten interfejs API jest oznaczony jako eksperymentalny dla można łatwo odróżnić od interfejsu API opartego na MigrateDefinition. (IA7fe3).

Poprawki błędów

  • Funkcje lambda w modyfikatorach przesunięcia zwracają teraz wartość IntOffset, a nie liczbę zmiennoprzecinkową. (Ic9ee5, b/174137212, b/174146755)
  • Wycofano LazyColumnFor, LazyRowFor, LazyColumnForIndexed i LazyRowForIndexed. Użyj LazyColumn i LazyRow (I5b48c)
  • Zmieniono nazwę na potrzeby zawieszania interfejsów API wejściowych wskaźnika HandlePointerInputScope do AwaitPointerEventScope i handlePointerInput() na awaitPointerEventScope(). (Idf0a1, b/175142755)
  • Nowa funkcja nieskończoności powtarzania do tworzenia specyfikacji InfiniteRepeatableSpec (I668e5)
  • Usunięto adnotację ExperimentalPointerInput (Ia7a24).

Wersja 1.0.0-alpha08

Grudzień 2, 2020

androidx.compose.animation:animation:1.0.0-alpha08 i androidx.compose.animation:animation-core:1.0.0-alpha08 zostały udostępnione. Wersja 1.0.0-alfa08 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodano sprawdzanie nazw i pozycji parametrów kompozycyjnych lambda w celu sprawdzenia spójności z wytycznymi dotyczącymi tworzenia wiadomości. Zgodnie ze sprawdzaniem lintowania i wskazówkami przenieśliśmy też niektóre interfejsy API z użyciem nazwy children jako nazwy końcowej lambdy do content. (Iec48e).
  • Usunięto wcześniej wycofane interfejsy API:
    • Usunięto: Modifier.onPositioned. Użyj: Modifier.onGloballyPositioned.
    • Usunięto: Modifier.onDraw. Użyj: Modifier.onDrawBehind.
    • Usunięto: Modifier.plus. Użyj: Modifier.then.
    • Usunięto: Color.Unset. Użyj: Color.Unspecified.
    • Zajęcia PxBounds zostały usunięte. Zamiast nich użyj: Rect.
    • (IE9d02, b/172562222)
  • Tymczasowo dodano opcję pozwalającą na na podstawie zegara MonotonicFrameClock (I1403b, b/173402197)

Poprawki błędów

  • Nazwa Modifier.drawLayer została zmieniona na Modifier.graphicsLayer Zaktualizowaliśmy też powiązane klasy w GraphicsLayer zgodnie z opinii Rady ds. interfejsów API. (I0bd29, b/173834241)
  • Dodano Modifier.scale/rotate interfejsów API jako udogodnień w DrewLayer.
    • Zmieniono nazwę Modifier.drawOpacity na Modifier.alpha
    • Zmieniono nazwę Modifier.drawShadow na Modifier.shadow (I264ca, b/173208140)
  • Zwiększenie czasu działania PointerInputData pola pozycji nie mogą mieć wartości null. (Id468a).
  • Zmieniono nazwy modyfikatorów przesunięciaPx na przesunięcie. Wykorzystują teraz parametry lambda zamiast stanu State. (Ic3021, b/173594846)
  • Nowe interfejsy API do uruchamiania animacji w współrzędnych (Ied662)
  • Wycofany komponent Ambient został wycofany z sufiksem Ambient i zastąpił je nowymi właściwościami z prefiksem Ambient zgodnie z innymi wytycznymi dotyczącymi interfejsu Ambients i Compose API. (I33440)
  • Kontrola czasu w testach (TestAnimationClock i jego zastosowania) to teraz w fazie eksperymentalnej (I6ef86, b/171378521)
  • Usuń stary moduł testowania interfejsu i jego złącza (I3a7cb)
  • Nazwa funkcji RestorableStateHolder.withRestorableState została zmieniona na RestorableStateProvider (I66640)
  • Interfejs Wyrównania został zaktualizowany i działa. (I46a07, b/172311734)

Wersja 1.0.0-alpha07

11 listopada 2020 roku

androidx.compose.animation:animation:1.0.0-alpha07 i androidx.compose.animation:animation-core:1.0.0-alpha07 zostały udostępnione. Wersja 1.0.0-alfa07 zawiera te zatwierdzenia.

Poprawki błędów

  • Podstawowe funkcje AmbientTextStyle, ProvideTextStyle i AmbientContentColor zostały wycofane. Zamiast nich używaj nowych wersji dostępnych w bibliotece Material Design. W przypadku aplikacji innych niż Material Design należy utworzyć własny system projektowania specyficznych dla nich motywów graficznych, z którego można korzystać w własnych komponentach. (I74acc, b/172067770)
  • Foundation.Text została wycofana i zastąpiona materiałem material.Text. Informacje o podstawowym, nieopiniowanym interfejsie API tekstowym, który nie przetwarza wartości z motywu, znajdziesz na stronie androidx.compose.foundation.BasicText. (If64cb).
  • Element MeasureResult został przeniesiony z obiektu MeasureScope. (Ibf96d, b/171184002)
  • Kilka symboli związanych z układem zostało przeniesionych z androidx.compose.ui do androidx.compose.layout.ui. (I0fa98, b/170475424)

Wersja 1.0.0-alpha06

28 października 2020 r.

androidx.compose.animation:animation:1.0.0-alpha06 i androidx.compose.animation:animation-core:1.0.0-alpha06 zostały udostępnione. Wersja 1.0.0-alfa06 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • włącz przejścia w zasadzie ComposeTestRule; usuń opcję włącz migający kursor w ComposeTestRule. (If0de3).

Wersja 1.0.0-alpha05

14 października 2020 r.

androidx.compose.animation:animation:1.0.0-alpha05 i androidx.compose.animation:animation-core:1.0.0-alpha05 zostały udostępnione. Wersja 1.0.0-alfa05 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Nowy interfejs animacji i podklasy: te klasy pozwalają zapisywać warunki rozpoczęcia i zakończenia animacji, zezwalaj na wykonywanie zapytań dotyczących wartości i tempa tylko za pomocą czasu odtwarzania (Ie95bd, b/163329867)

Poprawki błędów

  • Nazwa OnPositionedModifier została zmieniona na OnGloballyPositionedModifier a nazwa onPositioned() została zmieniona na onGloballyPositioned(). (I587e8, b/169083903)
  • Wycofuje interfejsy API contentColor() i currentTextStyle(), a następnie zastępuje je odpowiednio środowiskom AmbientContentColor i AmbientTextStyle. Aby uzyskać dostęp do bieżącej wartości, użyj właściwości .current z właściwości trybu nieaktywnego, jak w przypadku każdego innego elementu otoczenia. Zmiana ta została wprowadzona w celu zachowania spójności i uniknięcia korzystania z wielu sposobów na osiągnięcie tego samego celu. Dodatkowo zmienia nazwy niektórych właściwości elementów otoczenia, by lepiej opisać ich przeznaczenie:

    • ContentColorAmbient -> Kolor treści Ambient
    • TextStyleAmbient -> Styl tekstu otoczenia
    • IndicationAmbient -> Wskazanie otoczenia
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme (I37b6d)

Wersja 1.0.0-alpha04

1 października 2020 roku

androidx.compose.animation:animation:1.0.0-alpha04 i androidx.compose.animation:animation-core:1.0.0-alpha04 zostały udostępnione. Wersja 1.0.0-alfa04 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Adnotacja rootAnimationClockFactory, wyraźnesEnabled, mlinkingCursorEnabled i textInputServiceFactory z @WidoczneForTesting ustaw wewnętrzny interfejs API i ukryj jego dokument kdoc (I554eb, b/168308412)

Poprawki błędów

  • Zaktualizowano wiele interfejsów API związanych z grafiką
    • Zaktualizowano skalę i obrót interfejsów API transformacji, aby wykorzystać Parametr przesunięcia reprezentujący tabelę przestawną współrzędna zamiast osobnej liczby zmiennoprzecinkowej dla współrzędnych x/y w DrawScope i DrawTransform
    • Usunięto elementy Rect.expandToInclude i Rect.join metod
    • Zaktualizowaliśmy dokumentację dotyczącą promienia o owalu. oprócz orbitreka
    • Dodaliśmy dokumentację, by wskazać publiczny konstruktor dla wbudowanego promienia klasa nie powinna być wywoływana bezpośrednio, Wystąpienia obiektów o określonym promieniu powinny być tworzone przez ich konstruktory funkcji
    • Usunęliśmy interfejsy RoundRect API do wysyłania zapytań dotyczących górnego prawa, dolny róg, dolny środek itp.
    • Wycofano Rect.shift na rzecz Rect.translate
    • Usunięto interfejsy API RoundRect.grow i Rect.shrink
    • Zmieniono nazwę RoundRect.outerRect na Rect.boundingRect
    • Usunięto element RoundRect.middleRect/tallMiddleRect/wideMiddleRect i Rect.isStadium
    • Nazwa RoundRect.longestSide została zmieniona na RoundRect.maxDimensions
    • Zmieniono nazwę RoundRect.shortestSide na RoundRect.mindimension
    • Zmieniono RoundRect.center na właściwość, a nie funkcję
    • Zaktualizowano konstruktor RoundRect, który wykorzystuje właściwości Radius zamiast poszczególnych parametrów dla wartości promieni x/y.
    • Usunięto interfejsy Size API, które zakładały, że jest to prostokąt z nazwą origin 0,0
    • Do interfejsu Radius dodano interfejs API destrukcyjny.
    • Przeniesiono różne funkcje rozszerzenia RoundRect właściwości
    • (I8f5c7, b/168762961)
  • Fundament.Box został wycofany. Zamiast niej użyj elementu Foundation.layout.Box. (IE5950, b/167680279)
  • Nazwa stosu została zmieniona na Box. Dotychczasowa wersja Box zostanie wycofana i zastąpi nową nową wersją na stronie compose.foundation.layout. Działanie nowego pola to układanie elementów podrzędnych jeden nad drugim, jeśli ma kilka elementów podrzędnych. Różni się to od poprzedniej skrzynki, która działała podobnie jak kolumna. (I94893, b/167680279)
  • Parametry dekoracji pola zostały wycofane. Jeśli chcesz dodać do pola dekoracje lub dopełnienie, użyj modyfikatorów (Modifier.background, Modifier.border, Modifier.splash) (Ibae92, b/167680279)
  • Zablokowaliśmy statyczne importowanie treści zakresów układu (np.alignWithSiblings w RowScope). Zamiast niego należy stosować alternatywny zakres wyraźny: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be, b/166760797)

Wersja 1.0.0-alpha03

16 września 2020 roku

androidx.compose.animation:animation:1.0.0-alpha03 i androidx.compose.animation:animation-core:1.0.0-alpha03 zostały udostępnione. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.

Poprawki błędów

  • Spójnie przemianowaliśmy zastosowania grawitacji, aby wyrównać lub wyrównać interfejsy API układu. (I2421a, b/164077038)

Wersja 1.0.0-alpha02

Wrzesień 2, 2020

androidx.compose.animation:animation:1.0.0-alpha02 i androidx.compose.animation:animation-core:1.0.0-alpha02 zostały udostępnione. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodano użytkownika ManualFrameClock.hasAwaiters, aby sprawdzić, czy coś jest oczekiwanie na klatkę z zegara; runWithManualClock jako zamiennik dla runBlocking w przypadku testów, które wymagają ManualFrameClock; TestUiDispatcher.Main, który zapewnia łatwy dostęp do głównego dyspozytora UI podczas testów.

    Na przykład:

    @Test
    fun myTest() = runWithManualClock { clock ->
        // set some compose content
        withContext(TestUiDispatcher.Main) {
            clock.advanceClock(1000L)
        }
        if (clock.hasAwaiters) {
            println("The clock has awaiters")
        } else {
            println("The clock has no more awaiters")
        }
    }
    

    (I0a85b, b/161247083)

Poprawki błędów

  • Funkcja onPreCommit została wycofana; onCommit ma teraz zasób onPreCommit zachowanie użytkownika.

    onCommit i onActive są teraz uruchamiane w tej samej ramce Choreografa, zmiany kompozycji, które nastąpiły na początku, a nie na początku, kolejnego kadru choreografa. (I70403).

Wersja 1.0.0-alpha01

26 sierpnia 2020 r.

androidx.compose.animation:animation:1.0.0-alpha01 i androidx.compose.animation:animation-core:1.0.0-alpha01 zostały udostępnione. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.

Wersja 0.1.0-dev

Wersja 0.1.0-dev17

19 sierpnia 2020 r.

androidx.compose.animation:animation:0.1.0-dev17 i androidx.compose.animation:animation-core:0.1.0-dev17 zostały udostępnione. Wersja 0.1.0-dev17 zawiera te zatwierdzenia.

Nowe funkcje

Zmiany interfejsu API

  • Przesunięcie stało się klasą wbudowaną (Iaec70)
  • IntOffset jest teraz klasą wbudowaną (Iac0bf).
  • IntSize jest teraz klasą wbudowaną (I2bf42)
  • Animowana funkcja kompozycyjna w funkcji Animowana widoczność animuje wygląd i zniknięciem treści dzieci.

    Parametry EnterPrzenoszenie i ExitTransfer zostały wprowadzone do pracy Animowana kompozycja widoczności dla 3 różnych typów animacja wyglądu i znikania: zanikanie, przesuw, rozwinąć/zwinąć treść. Różne rodzaje animacji można ze sobą łączyć, aby uzyskać spersonalizowany wygląd i styl. (Idda11).

  • Wycofane pułapki PxBound w na korzyść Rect. Zaktualizowano wszystkie przypadki użycia z PxBounds z prostokątem i dodanym właściwe wycofanie/zastąpienie adnotacji, które pomagają migracji danych. (I37038, b/162627058)

Poprawki błędów

  • Nazwa usługi PlacementScope.placeAbsolute() została zmieniona na PlacementScope.place(), a poprzednia nazwa (PlacementScope.place()) na PlacementScope.placeRelative(). W efekcie metoda PlacementScope.place() nie będzie już automatycznie dublować położenia w kontekstach od prawej do lewej. Jeśli chcesz, użyj PlacementScope.placeRelative(). (I873ac, b/162916675)
  • Funkcja kompozycyjna state { ... } została wycofana i zastąpiona wyraźne wezwania do działania (remember { mutableStateOf(...) }) w celu uniknięcia wątpliwości. Zmniejsza to ogólną powierzchnię interfejsu API i liczbę koncepcji stanu management i pasuje do wzorca by mutableStateOf() klasy przekazania usługi. (IA5727).

Wersja 0.1.0-dev16

5 sierpnia 2020 r.

androidx.compose.animation:animation:0.1.0-dev16 i androidx.compose.animation:animation-core:0.1.0-dev16 zostały udostępnione. Wersja 0.1.0-dev16 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Wbudowane konwertery wektorowe umożliwiające konwersję Jednostki są teraz dostępne w usłudze Foo.VectorConverter. np. Dp.VectorConverter, Color.VectorConverter, Float.VectorConverter itp. (I3e273)
  • Obsługuj detektor końcowy w: Modifier.animateContentSize() Dzięki temu po zakończeniu animacji zmiany rozmiaru zostanie wysłane powiadomienie z rozmiarem rozpoczęcia i zakończenia animacji. (I277b2)
  • Nowy modyfikator animateContentSize, który animuje parametr zmiana rozmiaru układu jego modyfikatora podrzędnego (Ieffdc)
  • Dodano MonotonicFrameAnimationClock, który umożliwia korzystanie z MonotonicFrameClock jako element AnimationClockObservable, który wypełnia lukę między nowymi zegarami opartymi na współprogramach a interfejsami API, które nadal używają zegary z wywołaniem zwrotnym.

    Odpowiednik MonotonicFrameClockparametru ManualAnimationClock to teraz ManualFrameClock (I111c7, b/161247083)

Poprawki błędów

  • Interfejsy API do obsługi tekstu od prawej do lewej zostały zaktualizowane. Dodano parametr LayoutDirectionAmbient, którego można używać do odczytywania i zmieniania kierunku układu. Modifier.rtl oraz Modifier.ltr zostały usunięte. (I080B3)
  • Wymagaj jawnego określenia typu T Definicja przejścia. (Zignorowano)
  • pakiet Foundation.shape.corner został spłaszczony do pliku Foundation.share (I46491, b/161887429)
  • Interfejs Modifier.plus został wycofany. Użyj interfejsu Modifier.then. „To” ma silniejszy sygnał dotyczący kolejności, ale nie pozwala też na wpisanie słowa Modifier.padding().background() + anotherModifier, które przerywa łańcuch i jest trudniejsze do odczytania (Iedd58, b/161529964).
  • Nazwa Modifier.drawBackground została zmieniona na Modifier.background (I13677).

Wersja 0.1.0-dev15

22 lipca 2020 r.

androidx.compose.animation:animation:0.1.0-dev15 i androidx.compose.animation:animation-core:0.1.0-dev15 zostały udostępnione. Wersja 0.1.0-dev15 zawiera te zatwierdzenia.

Aktualizacja zależności

  • Aby używać narzędzia Compose w wersji 0.1.0-dev15, musisz zaktualizować zależności zgodnie z nowymi fragmentami kodu pokazanymi powyżej w sekcji Deklarowanie zależności.

Zmiany interfejsu API

  • Interfejs Migrate API został zmieniony tak, aby zwracał transitState, zamiast przekazywać parametr transitState, dzieciom. Dzięki temu interfejs API jest bardziej spójny z animate(). (I24e38)
  • Dodano parametr modyfikatora dla przejścia (I87cfe, b/159706180)
  • W interfejsach API najwyższego poziomu użyj AnimationSpec zamiast AnimationBuilder Aby wyjaśnić koncepcję specyfikacji animacji statycznej
    • Ulepsz przejście z DSL, usuwając wymaganie lambda dla: podczas tworzenia specyfikacji animacji, takich jak starsze, wiosna. Zamiast tego biorą z parametrami konstruktora.
    • Popraw ogólną łatwość otwierania otwierania AnimationSpec konstruktory, zamiast polegać na konstruktorach.
    • Zmień czas trwania i opóźnienie klatek kluczowych i elementów pośrednich na format Int. Ten eliminuje niepotrzebne rzuty typów i przeciążanie metod (na wspiera format Long i Int). (ICA0b4).
  • Zastąpiliśmy format IntPx ciągiem Int. Zastąpiono pozycję IntPxPosition z IntOffset. IntPxSize zastąpiono wartością IntSize. (IB7b44)
  • Aby skonsolidować liczba klas używanych do reprezentowania informacje o rozmiarach, standaryzowanie na podstawie użycia klasy Size rozmiaru PxSize. Zapewnia to korzyści klasy wbudowanej, aby wykorzystać długi do pakowania 2 wartości zmiennoprzecinkowych do reprezentowania szerokość i wysokość w postaci liczby zmiennoprzecinkowej. (IC0191).
  • Aby skonsolidować liczba klas używanych do reprezentowania pozycjonowanie, standaryzowanie na użycie klasy Offset pozycji PxPosition. Zapewnia to korzyści klasy wbudowanej, aby wykorzystać długi do pakowania 2 wartości zmiennoprzecinkowych reprezentujących x i odsunięcia y są przedstawione w postaci liczby zmiennoprzecinkowej. (I3ad98).
  • Zastąpiono użycie klasy Px w różnych tworzone są klasy w ramach dużego refaktoryzacja, która polega wyłącznie na Dp i typy podstawowe parametrów pikseli (I086f4).
  • Dodano obsługę animate() dla Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds i AnimationVector (Ib7518)
  • Przenikanie akceptuje teraz opcjonalny parametr AnimationBuilder, aby umożliwić skonfigurowanie animacji (I6d6e0)
  • Zastąpiono wszystkie przypadki użycia koloru dopuszczalnego w interfejsie API na nie dopuszcza wartości null i użyj wartości Color.Unset zamiast null (Iabaa7).
  • Usunięto klasę ValueHolder. Zmieniono strukturę klasy AnimatedValue, klas AnimatedFloat na ustaw pole wartości animacji jako abstrakcyjne, aby podklasy mogły obserwować aktualizację wartości.
    • Dodano klasy modelu dla elementów AnimatedValue, AnimatedFloat itp.
    • Dodaliśmy nowy zestaw lekkiego interfejsu API @Composable do animacji między wartościami. (I79530)
  • Zmiany w interfejsie API nieaktywnym. Szczegóły znajdziesz w logu i dokumentacji Ambient<T> (I4c7ee, b/143769776)
  • Nowy tryb powtarzania: Odwróć. Ten tryb odwraca poprzedni iteracja podczas powtarzania animacji w elemencie RepeatableSpec czy VectorizedRepeatableSpec. (Ibe0f5).
  • Dodatki API do ManualAnimationClock: hasObservers: Boolean i parametr konstruktora dispatchOnSubscribe: Boolean (Iaa134)
  • Dodane interfejsy API do określania granic min./maks. w AnimatedFloat (Icd9cc)

Poprawki błędów

  • Nazwa runOnIdleCompose została zmieniona na runOnIdle (I83607)
  • Zmieniono nazwy kilku interfejsów API do testowania, aby były bardziej intuicyjne. Wszystkie Interfejsy API findXYZ zostały zmienione na onNodeXYZ. Nazwy wszystkich interfejsów API doXYZ zostały zmienione na XYZ. (I7f164)
  • Wprowadzono niskopoziomowe interfejsy API do animacji bezstanowych. Te interfejsy API (I63bf7)
  • Funkcja kompozycyjna Rekomponuj nie jest już przydatną abstrakcją. Większość zmian kompozycji powinna następować w wyniku przypisań MutableState. W innych przypadkach zalecamy użycie funkcji invalidate do aktywowania przekomponowania bieżącego zakresu. (Ifc992).
  • Zastąpiono użycie klasy Px w różnych tworzone są klasy w ramach dużego refaktoryzacja, która polega wyłącznie na Dp i podstawowych parametrów pikseli. Cała klasa Px została usunięta (I3ff33).
  • Zastąpiono użycie klasy Px w różnych tworzone są klasy w ramach dużego refaktoryzacja, która polega wyłącznie na Dp i typy podstawowe parametrów pikseli (Id3434).
  • Przenikanie może teraz działać z wartością początkową null (Iad6a4, b/155947711)
  • Zastąpiono użycie klasy Px w różnych tworzone są klasy w ramach dużego refaktoryzacja, która polega wyłącznie na Dp i typy podstawowe parametrów pikseli (I19d02)
  • Skonsolidowane implementacje CanvasScope więc teraz będą tylko DrawScope, ContentDrawScope Nazwa obiektu CanvasScope została zmieniona na DrawScope. Zaktualizowano obiekt DrawScope, aby zaimplementować gęstość i podaj kierunek układu Usunięto podklasę DrawScope w ContentDrawScope Painter i PainterModifier zostały zaktualizowane nie mają już właściwości RTL, ponieważ DrawScope zapewnia już bez ręcznego podawania (I1798e)
  • Zaktualizowano wyższy poziom a także tworzyć interfejsy API, które udostępniają obiekt Canvas i udostępnić CanvasScope. Spowoduje to usunięcie że konsumenci muszą utrzymywać własnych obiektów Paint. Dla konsumentów, którzy nadal potrzebują dostępu do Canvas mogą korzystać z rozszerzenia DrawCanvas, , która powoduje wywołanie zwrotne do problemu za pomocą poleceń rysowania Obszar roboczy. (I80afd).
  • Dodano parametry grawitacji pionowego i poziomego do wierszy oraz kolumn. (I7dc5a)
  • Nazwa modułu ui-text została zmieniona na ui-text-core (I57dec).
  • Ulepszenie interfejsu API DrawModifier:
    • Zmieniono zakres odbiorcy dla metody Draw() ContentDrawScope
    • Usunięto wszystkie parametry z dresz()
    • Interfejs DrawScope jest taki sam jak poprzednia wersja CanvasScope
    • ContentDrawScope ma metodę DrawContent() (Ibaced, b/152919067)
  • runOnIdleCompose i runOnUiThread to teraz funkcje globalne zamiast metod na ComposeTestRule. (Icbe8f).
  • [Mutable]Operatory delegowania właściwości stanu zostały przeniesione do rozszerzeń na potrzeby optymalizacji przekazywania uprawnień do usługi Kotlin 1.4. Rozmówca musi dodać importuje dane, aby dalej używać funkcji by state { ... } lub by mutableStateOf(...). (I5312C)
  • Interfejs ColoredRect został wycofany. Użyj w zamian zasady Box(Modifier.preferredSize(width, height).drawBackground(color)). (I499fa, b/152753731)
  • Zastąpienie operatora modyfikatora plus funkcjami rozszerzeń fabrycznych (I225e4).
  • Wycofana funkcja kompozycyjna w centrum. Należy go zastąpić modyfikatorem LayoutSize.Fill + Layoutalizator.Center lub jednym z elementów kompozycyjnych Box albo Stack z odpowiednimi modyfikatorami (Idf5e0).
  • Zmieniono nazwę Układ Elastyczny na Układ Weight. Zmieniono nazwę precyzyjnego parametru na wypełnienie. (If4738).
  • Funkcja kompozycjonalna przezroczystości została zastąpiona z modyfikatorem DrOpacity. (I5fb62)
  • Testy używające AndroidComposeTestRule teraz wyświetlają animację zegar stanowiący podstawę kompozycji, który umożliwia jej zatrzymywanie, możesz ręcznie wznowić i przejść na wyższy poziom. (Id54c5).
  • Obsługa kierunku od prawej do lewej w modyfikatorze LayoutPadding (I9e8da).
  • Interfejsy Density i DensityScope zostały połączone w jeden interfejs. Zamiast trybu nieaktywnego() możesz teraz używać obiektu DensityAmbient.current. Zamiast opcji Gęstość(gęstość) tylko za pomocą(gęstości) (I11cb1)
  • Dodano metody kopiowania do różnych typy klas, w tym:
    • Przesunięcie
    • Rozmiar
    • Promień
    • Ruch
    • TransformOrigin
    • Wycofana metoda obiektu towarzyszącego Size.copy korzyść metody kopiowania instancji (Ife290, b/159905651)
  • Element androidx.compose.ViewComposer został przeniesiony do folderu androidx.ui.node.UiComposer Aplikacja androidx.compose.Emittable została usunięta. W przypadku KomponentNode wystąpił nadmiarowy błąd. Strona androidx.compose.ViewAdapters została usunięta. Nie są już one obsługiwanym przypadkiem użycia. Interfejs Compose.composeInto został wycofany. Użyj interfejsu setContent lub setViewContent. Metoda Compose.disposeComposition została wycofana. Użyj metody dispose dla obiektu Composition zwróconego przez setContent. Aplikacja androidx.compose.Compose.subcomposeInto została przeniesiona do androidx.ui.core.subcomposeInto Nazwa węzła KomponentNode#emitInsertAt została zmieniona na węzeł KomponentNode#insertAt Nazwa węzła KomponentNode#emitRemoveAt została zmieniona na KomponentNode#removeAt Nazwa KomponentNode#emitMode została zmieniona na KomponentNode#move (Idef00).