Анимация в Compose

Создавать анимацию в приложениях Jetpack Compose, чтобы повышать удобство для пользователей.
Последнее обновление Основная версия Release Candidate Бета-версия Альфа-версия
7 октября 2026 г. 1.12.1 - 1.13.0-beta01 -

Структура

Compose – это сочетание семи идентификаторов групп Maven в androidx. Каждая группа содержит определенный набор функций, для которых есть отдельные примечания к выпуску.

В таблице ниже перечислены группы и ссылки на примечания к каждому выпуску.

ГруппаОписание
compose.animationСоздавать анимацию в приложениях Jetpack Compose, чтобы повышать удобство для пользователей.
compose.compilerПреобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
compose.foundationСоздавайте приложения Jetpack Compose с помощью готовых блоков и расширяйте их, чтобы создавать собственные элементы системы проектирования.
compose.materialСоздавайте интерфейсы Jetpack Compose с помощью готовых компонентов Material Design. Это точка входа более высокого уровня для Compose, предназначенная для предоставления компонентов, соответствующих описанным на сайте www.material.io.
compose.material3Создавайте интерфейсы Jetpack Compose с помощью компонентов Material Design 3 – следующего поколения Material Design. Material 3 включает обновленные темы и компоненты, а также функции персонализации Material You, такие как динамические цвета. Он разработан с учетом нового визуального стиля Android 12 и системного интерфейса.
compose.runtimeОсновные строительные блоки модели программирования и управления состоянием Compose, а также основная среда выполнения для плагина компилятора Compose.
compose.uiОсновные компоненты Compose UI, необходимые для взаимодействия с устройством, в том числе макет, отрисовка и ввод.

Как объявлять зависимости

Чтобы добавить зависимость от Compose, необходимо добавить в проект репозиторий Maven от Google. Подробная информация приведена в репозитории Google Maven.

Добавьте в файл build.gradle приложения или модуля зависимости для нужных артефактов:

Groovy

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

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Подробнее о зависимостях приведено в статье Добавление зависимостей сборки.

Отзыв

Ваши отзывы помогают нам улучшать Jetpack. Если вы обнаружите проблемы или решите что-то предложить, отправьте отзыв. Прежде чем создавать новую проблему, ознакомьтесь с существующими. Вы можете добавить свой голос к существующей проблеме, нажав на значок звездочки.

Как создать новую проблему

Дополнительную информацию можно найти в документации по системе отслеживания ошибок.

Версия 1.13

Версия 1.13.0-beta01

7 октября 2026 г.

Выход androidx.compose.animation:animation-*:1.13.0-beta01. Версия 1.13.0-beta01 содержит эти коммиты.

Изменения в API

  • Теперь библиотеки предназначены для Kotlin 2.2 и требуют kotlinc 2.2 (I82396, b/498369605).

Исправление ошибок

  • Исправлен сбой в SeekableTransitionState, при котором округление значений NaN приводило к исключению IllegalArgumentException во время переходов с нулевой продолжительностью или прерыванием. (I8f3a9, b/555294641)

Версия 1.13.0-alpha03

9 сентября 2026 г.

Выход androidx.compose.animation:animation-*:1.13.0-alpha03. Версия 1.13.0-alpha03 содержит эти коммиты.

Изменения в API

  • Контакт (ExperimentalDeferredTransitionApi) удален. Для API отложенного перехода больше не требуется включать экспериментальные функции. (Ib6430)

Исправление ошибок

  • compileSdk для библиотек Compose обновлены до версии 37.1. Это потребует транзитивного обновления compileSdk для всех приложений и библиотек, использующих Compose. (I05b0f)

Версия 1.13.0-alpha02

26 августа 2026 г.

Выход androidx.compose.animation:animation-*:1.13.0-alpha02. Версия 1.13.0-alpha02 содержит эти коммиты.

Версия 1.13.0-alpha01

12 августа 2026 г.

Выход androidx.compose.animation:animation-*:1.13.0-alpha01. Версия 1.13.0-alpha01 содержит эти коммиты.

Изменения в API

  • Восстановлен устаревший метод EnterTransition.with с DeprecationLevel.HIDDEN для обеспечения совместимости с двоичными файлами. (I71214, b/535291175)
  • Добавлены аннотации для переопределяемых пустых базовых методов в Compose с помощью @EmptySuper, чтобы указать, что переопределяемые реализации не должны вызывать super. (Id407b)
  • Добавлен параметр CapturedAnimatedVisibility, альтернативный параметру AnimatedVisibility, который позволяет немедленно удалить дочерний элемент при выходе и анимировать последний отрисованный кадр с помощью параметра GraphicsLayer. (I6c5b3)
  • Переименована перегрузка rememberTransition, принимающая DeferredTransitionState, в rememberDeferredTransition, чтобы отличить ее от стандартных вариантов TransitionState. (I7bb7e)
  • Сделал EnterExitTransitionConfig общедоступным для EnterTransition и ExitTransition. (Idd5a4, b/330152398)
  • Transition.Crossfade и createChildTransition теперь стабильны. EnterTransition.with удален (используйте togetherWith). (I38f66)
  • createChildTransition теперь стабильна. (Ied832, b/261422996)
  • У пользователя androidx.benchmark теперь minSdk (24). (Ic2a85)
  • Текущее анимированное значение на странице DeferredTargetAnimation. (Ie4f6e, b/434659224)
  • Замените экспериментальный API @AnimationToolingApi на API @RestrictTo, который обеспечивает более надежное отслеживание. (Ia4fd1, b/524317805)
  • API unveilIn и veilOut стали стабильными (I9e3a3)

Исправление ошибок

  • Оптимизированная инициализация на уровне файла свойств класса значений верхнего уровня animation с помощью динамических методов получения. (I88b86)
  • Оптимизирована инициализация сопутствующих объектов классов значений compose:animation (StartOffsetType, ArcMode, SlideDirection) с помощью динамических методов получения. (I4162e)
  • Удалена информация об API (Ia8066)

Версия 1.12

Версия 1.12.1

9 сентября 2026 г.

Выход androidx.compose.animation:animation-*:1.12.1. Версия 1.12.1 содержит эти коммиты.

Версия 1.12.0

12 августа 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0. Версия 1.12.0 содержит эти коммиты.

Важные изменения с версии 1.11.0

Версия 1.12.0-rc01

29 июля 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-rc01. Версия 1.12.0-rc01 содержит эти коммиты.

Версия 1.12.0-beta02

1 июля 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-beta02. Версия 1.12.0-beta02 содержит эти коммиты.

Версия 1.12.0-beta01

17 июня 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-beta01. Версия 1.12.0-beta01 содержит эти коммиты.

Изменения в API

  • В параметр permitTransformDuringDeferredTransition для SharedContentConfig добавлена возможность управлять тем, должны ли общие элементы визуально преобразовываться вместе с родительским контейнером на отложенном этапе DeferredTransition. (I4b67b)
  • Проведен рефакторинг Transition с преобразованием в запечатанный класс и улучшением документации по API и безопасности.DeferredTransition (Iecb8f)
  • Добавлено inactiveElementColor в LookaheadAnimationVisualDebugging в androidx-main
  • Добавлено inactiveElementColor в LookaheadAnimationVisualDebugging (I5454b, b/501193322)
  • Удалена аннотация "ExperimentalAnimatableApi". (I4e670, b/500030165)

Исправление ошибок

  • Исправлена проблема в LinkComposer, из-за которой при аннулировании во время композиции пропускались композиции, а не выполнялись повторно. (Ie29fe)

Версия 1.12.0-alpha03

19 мая 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-alpha03. Версия 1.12.0-alpha03 содержит эти коммиты.

Изменения в API

  • DeferredTargetAnimation больше не экспериментальная функция. Удалите opt-in в androidx-main.
  • В параметры AnimatedVisibility и AnimatedContent добавлен параметр mutableTransform, чтобы поддерживать прямое ручное управление свойствами (например, для прогнозирующих жестов "назад") во время отложенного перехода. (I236e8)
  • DeferredTargetAnimation больше не является экспериментальной функцией. Отключите ее. (I1e4ae, b/500030165)
  • Новый перечислитель для поддержки триггеров в ui-tooling (I6e198, b/478807872)

Версия 1.12.0-alpha02

6 мая 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-alpha02. Версия 1.12.0-alpha02 содержит эти коммиты.

Версия 1.12.0-alpha01

22 апреля 2026 г.

Выход androidx.compose.animation:animation-*:1.12.0-alpha01. Версия 1.12.0-alpha01 содержит эти коммиты.

Исправление ошибок

  • Обновлена версия Compose compileSdk до API 37. Это означает, что при использовании Compose требуется минимальная версия AGP 9.2.0. (Id45cd, b/413674743)
  • Завершение анимации SeekableTransitionState до композиции (1bf9dc, b/410055849)

Версия 1.11

Версия 1.11.4

1 июля 2026 г.

Выход androidx.compose.animation:animation-*:1.11.4. Версия 1.11.4 содержит эти коммиты.

Версия 1.11.3

17 июня 2026 г.

Выход androidx.compose.animation:animation-*:1.11.3. Версия 1.11.3 содержит эти коммиты.

Версия 1.11.2

19 мая 2026 г.

Выход androidx.compose.animation:animation-*:1.11.2. Версия 1.11.2 содержит эти коммиты.

Версия 1.11.1

6 мая 2026 г.

Выход androidx.compose.animation:animation-*:1.11.1. Версия 1.11.1 содержит эти коммиты.

Версия 1.11.0

22 апреля 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0. Версия 1.11.0 содержит эти коммиты.

Важные изменения с версии 1.10.0

  • Выход androidx.compose.animation:animation-*:1.11.0. В стабильной версии собраны улучшения и исправления из цикла разработки 1.11.0. Основное внимание уделено стабильности общих элементов, надежности потоков и новым инструментам для разработчиков.

Новые функции

  • Визуальная отладка для функции "Заглядывать вперед". Добавлен новый набор возможностей визуальной отладки, позволяющий визуализировать информацию, связанную с общими элементами и Modifier.animatedBounds. В частности, в нем содержатся сведения о границах объекта, траектории анимации границ, количестве найденных совпадений, активности перехода и т. д.

Изменения в API

  • Добавлены новые API LookaheadAnimationVisualDebugging, CustomizedLookaheadAnimationVisualDebugging и LookaheadAnimationVisualDebugConfig, которые помогают отлаживать анимированные границы и анимацию общих элементов. (Id5575, b/390011686, b/466169919)

Исправление ошибок

  • Безопасность потоков. Теперь SeekableTransitionState корректно обрабатывает изменения состояния вне потока. Ранее, если состояние изменялось вне потока UI с помощью Snapshot.withMutableSnapshot(), переход ошибочно пытался обработать обновление вне потока UI. (0aba38)
  • Производительность. Улучшена производительность доступа к карте sharedElements. (93f57d)
  • Отчет о состоянии. Исправлена ошибка isTransitionActive, из-за которой значение "истина" указывалось, даже если не было активных анимаций из совпадающих общих элементов. (d3426a, b/474385510)
  • Стабильность. Теперь для запроса границ требуется, чтобы общий корневой элемент перехода был размещен до запроса границ (77d59c). Кроме того, позиции для sharedElements теперь можно получить, только если прикреплен элемент SharedTransitionLayout. (I2a035)
  • Обработка прерываний. Исправлена обработка прерываний в угловом случае, когда анимация выхода дочернего элемента завершается, пока переход родительского элемента ещё выполняется в AnimatedContent. (ad9b4f)
  • Проверка. Проверяет длительность в InfiniteRepeatableSpec, чтобы предотвратить циклы с нулевой длительностью. (151b6d)
  • Настройка. Учитывайте visibilityThreshold в пользовательском AnimationSpec для animateFloatAsState. (3a1cdc)

Версия 1.11.0-rc01

8 апреля 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-rc01. Версия 1.11.0-rc01 содержит эти коммиты.

Версия 1.11.0-beta02

25 марта 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-beta02. Версия 1.11.0-beta02 содержит эти коммиты.

Исправление ошибок

  • Теперь SeekableTransitionState правильно обрабатывает изменения состояния вне основного потока. Ранее, если состояние изменялось вне потока UI с помощью Snapshot.withMutableSnapshot(), переход ошибочно пытался обработать обновление вне потока UI.(0aba38)
  • Проверьте длительность в InfiniteRepeatableSpec, чтобы избежать циклов с нулевой длительностью. (151b6d)
  • Учитывайте visibilityThreshold в пользовательском AnimationSpec для animateFloatAsState (3a1cdc)
  • Исправлена обработка прерывания в угловом случае, когда анимация выхода дочернего элемента завершается, пока переход родительского элемента ещё выполняется в AnimatedContent. (ad9b4f)

Версия 1.11.0-beta01

11 марта 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-beta01. Версия 1.11.0-beta01 содержит эти коммиты.

Исправление ошибок

  • Исправьте isTransitionActive, чтобы он сообщал значение true только при наличии активной анимации из сопоставленного общего элемента (d3426a, b/474385510).

Версия 1.11.0-alpha06

25 февраля 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha06. Версия 1.11.0-alpha06 содержит эти коммиты.

Исправление ошибок

  • Улучшена производительность при доступе к карте sharedElements. (93f57d)

Версия 1.11.0-alpha05

11 февраля 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha05. Версия 1.11.0-alpha05 содержит эти коммиты.

Версия 1.11.0-alpha04

28 января 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha04. Версия 1.11.0-alpha04 содержит эти коммиты.

Версия 1.11.0-alpha03

14 января 2026 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha03. Версия 1.11.0-alpha03 содержит эти коммиты.

Новые функции

  • Добавлен новый набор функций визуальной отладки, позволяющий визуализировать информацию, связанную с общими элементами и Modifier.animatedBounds. В частности, в нем содержатся сведения о границах объекта, траектории анимации границ, количестве найденных совпадений, активности перехода и т. д.

Изменения в API

  • Добавлены новые API LookaheadAnimationVisualDebugging, CustomizedLookaheadAnimationVisualDebugging и LookaheadAnimationVisualDebugConfig, которые помогают отлаживать анимированные границы и анимацию общих элементов. (Id5575, b/390011686, b/466169919)

Исправление ошибок

  • Требовать, чтобы перед запросом границ был размещен общий корневой элемент перехода. (77d59c)

Версия 1.11.0-alpha02

17 декабря 2025 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha02. Версия 1.11.0-alpha02 содержит эти коммиты.

Версия 1.11.0-alpha01

3 декабря 2025 г.

Выход androidx.compose.animation:animation-*:1.11.0-alpha01. Версия 1.11.0-alpha01 содержит эти коммиты.

Исправление ошибок

  • Получать позицию для sharedElements, только если прикреплен SharedTransitionLayout (I2a035)

Версия 1.10

Версия 1.10.6

25 марта 2026 г.

Выход androidx.compose.animation:animation-*:1.10.6. Версия 1.10.6 содержит эти коммиты.

Версия 1.10.5

11 марта 2026 г.

Выход androidx.compose.animation:animation-*:1.10.5. Версия 1.10.5 содержит эти коммиты.

Версия 1.10.4

25 февраля 2026 г.

Выход androidx.compose.animation:animation-*:1.10.4. Версия 1.10.4 содержит эти коммиты.

Версия 1.10.3

11 февраля 2026 г.

Выход androidx.compose.animation:animation-*:1.10.3. Версия 1.10.3 содержит эти коммиты.

Исправление ошибок

  • Исправлен сбой, вызванный пограничным случаем, когда узел общего контента отсоединяется до того, как будет размещен корень общего перехода. (121310)

Версия 1.10.2

28 января 2026 г.

Выход androidx.compose.animation:animation-*:1.10.2. Версия 1.10.2 содержит эти коммиты.

Версия 1.10.1

14 января 2026 г.

Выход androidx.compose.animation:animation-*:1.10.1. Версия 1.10.1 содержит эти коммиты.

Версия 1.10.0

3 декабря 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0. Версия 1.10.0 содержит эти коммиты.

Важные изменения с версии 1.9.0

  • API для общих переходов стабильны в версии 1.10
  • Новый API Modifier.skipToLookaheadPosition для макетов в SharedTransitionScope, позволяющий переходить к целевой позиции, а не анимировать изменения позиции (9a88f4)
  • Поддержка динамического включения и отключения общих элементов (07680e)
  • Новый API для поддержки начальной скорости при запуске перехода общего элемента с помощью жеста пролистывания (b0afe2)
  • Новые EnterTransition и ExitTransition для анимации слоя вуали для AnimatedVisibility и AnimatedContent (0f6e7c)

Версия 1.10.0-rc01

19 ноября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-rc01. Версия 1.10.0-rc01 содержит эти коммиты.

Изменения в API

  • Для EnterExitTransitions теперь доступны варианты unveilIn и veilOut. Это позволяет анимировать наложенный слой перед входящим или исходящим контентом. (If26fe)

Исправление ошибок

  • Поддержка отслеживания границ при отсоединении и повторном присоединении sharedElement (be0e9e)
  • Сделать карту общих элементов наблюдаемой для отслеживания активности перехода. (1fc2ec)

Версия 1.10.0-beta02

5 ноября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-beta02. Версия 1.10.0-beta02 содержит эти коммиты.

Версия 1.10.0-beta01

22 октября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-beta01. Версия 1.10.0-beta01 содержит эти коммиты.

Изменения в API

  • Удален фабричный метод SharedContentConfig, который принимает лямбда-выражение, указывающее, следует ли включить общий элемент. В API lookheadScopeCoordinates добавлен параметр LookaheadScope, который определяет область действия получателя. (Id1fc2, b/452416806)
  • Интерфейс BoundsTransform был обновлен и теперь соответствует интерфейсу SizeTransform. (Ia46f2, b/343696350)
  • Удален устаревший API ScaleToBounds. Вместо него используйте scaleToBounds. (I17296)

Версия 1.10.0-alpha05

8 октября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-alpha05. Версия 1.10.0-alpha05 содержит эти коммиты.

Изменения в API

Версия 1.10.0-alpha04

24 сентября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-alpha04. Версия 1.10.0-alpha04 содержит эти коммиты.

Изменения в API

  • Изменены названия API, связанных с PlaceHolderSize. (I037d8, b/343696350)
  • Новый API перехода общего элемента для поддержки начальной скорости, чтобы сохранить скорость жеста в общих элементах. (I91be9)

Версия 1.10.0-alpha03

10 сентября 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-alpha03. Версия 1.10.0-alpha03 содержит эти коммиты.

Изменения в API

  • Modifier.skipToLookaheadSize теперь использует лямбда-функцию, которая по умолчанию включена и позволяет пропускать размеры только при активном общем переходе, как и Modifier.skipToLookaheadPosition. (Ibe0f5, b/432485585)

Версия 1.10.0-alpha02

27 августа 2025 года

Выход androidx.compose.animation:animation-*:1.10.0-alpha02. Версия 1.10.0-alpha02 содержит эти коммиты.

Версия 1.10.0-alpha01

13 августа 2025 г.

Выход androidx.compose.animation:animation-*:1.10.0-alpha01. Версия 1.10.0-alpha01 содержит эти коммиты.

Новые функции

  • Новый API, позволяющий динамически включать и отключать общие элементы, а также учитывать, выполняется ли переход между ними.
  • Новый API для настройки альтернативных границ целевого элемента, если целевой общий элемент удаляется во время перехода.
  • Новый API для получения LayoutCoordinates LookaheadScope. (I18dd4, b/409819304, b/395670637)
  • Новый модификатор Modifier.skipToLookaheadPosition в SharedTransitionScope для закрепления макета в целевой позиции во время общего перехода. (I88734)

Изменения в API

  • Упрощенный оператор renderInSharedTransitionOverlay без лямбда-функции clipInOverlayDuringTransition, поскольку она редко использовалась. Добавлен новый фабричный метод для SharedContentConfig. (Id01b2)
  • Добавлен набор настроек по умолчанию для общего элемента, общих границ и конфигураций renderInSharedTransitionOverlay. Теперь эти настройки по умолчанию доступны через общедоступные API. (Id23cc)
  • ScaleToBounds ResizeMode переименован в scaleToBounds (I5ac50)

Исправление ошибок

Версия 1.9

Версия 1.9.5

19 ноября 2025 г.

Выход androidx.compose.animation:animation-*:1.9.5. Версия 1.9.5 содержит эти коммиты.

Версия 1.9.4

22 октября 2025 г.

Выход androidx.compose.animation:animation-*:1.9.4. Версия 1.9.4 содержит эти коммиты.

Версия 1.9.3

8 октября 2025 г.

Выход androidx.compose.animation:animation-*:1.9.3. Версия 1.9.3 содержит эти коммиты.

Версия 1.9.2

24 сентября 2025 г.

Выход androidx.compose.animation:animation-*:1.9.2. Версия 1.9.2 содержит эти коммиты.

Версия 1.9.1

10 сентября 2025 г.

Выход androidx.compose.animation:animation-*:1.9.1. Версия 1.9.1 содержит эти коммиты.

Исправление ошибок

  • Исправлена инициализация анимации для sharedElementWithCallerManagedVisibility. (fa29de)

Версия 1.9.0

13 августа 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0. Версия 1.9.0 содержит эти коммиты.

Версия 1.9.0-rc01

30 июля 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-rc01. Версия 1.9.0-rc01 содержит эти коммиты.

Версия 1.9.0-beta03

16 июля 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-beta03. Версия 1.9.0-beta03 содержит эти коммиты.

Версия 1.9.0-beta02

2 июля 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-beta02. Версия 1.9.0-beta02 содержит эти коммиты.

Версия 1.9.0-beta01

18 июня 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-beta01. Версия 1.9.0-beta01 содержит эти коммиты.

Версия 1.9.0-alpha04

4 июня 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-alpha04. Версия 1.9.0-alpha04 содержит эти коммиты.

Версия 1.9.0-alpha03

20 мая 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-alpha03. Версия 1.9.0-alpha03 содержит эти коммиты.

Версия 1.9.0-alpha02

7 мая 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-alpha02. Версия 1.9.0-alpha02 содержит эти коммиты.

Новые функции

  • Улучшена поддержка прокрутки или перетаскивания в общих элементах. В частности, когда прокручивается общий элемент, к нему применяется дельта прокрутки, а не к целевому элементу. (cacf7b)

Версия 1.9.0-alpha01

23 апреля 2025 г.

Выход androidx.compose.animation:animation-*:1.9.0-alpha01. Версия 1.9.0-alpha01 содержит эти коммиты.

Изменения в поведении

  • Для проверок Lint, поставляемых вместе с Compose, теперь требуется AGP версии 8.8.2 или более поздней. Если вы не можете обновить AGP, обновите Lint отдельно, используя версию android.experimental.lint.version=8.8.2 (или более новую) в файле gradle.properties. Чтобы выполнять проверки Compose lint в IDE, требуется Android Studio Ladybug или более новая версия.

Новые функции

  • Улучшена прокрутка общих элементов (ea4f1f).

Изменения в API

  • Для проектов, выпущенных с Kotlin 2.0, требуется KGP 2.0.0 или более поздней версии. (Idb6b5)
  • Методы TabRow и ScrollableTabRow больше не поддерживаются. Вместо них используются первичные и вторичные варианты каждого из этих методов. Строки на вкладках "Основная" и "Дополнительная" теперь работают быстрее и точнее. (I918e2)
  • Добавлен локальный для запроса ресурс LocalResources. LocalResources.currentПри изменении конфигурации будет выполняться повторная композиция, поэтому вызовы API, например stringResource(), будут возвращать обновленные значения (I50c13, b/274786917).

Исправление ошибок

  • Убедитесь, что общие элементы удаляются из оверлея после завершения перехода (35f359).
  • Устранение лишней рекомпозиции при переходе (988923)
  • Исправлена обработка прерывания перехода дочернего элемента (8aed52).
  • Убедитесь, что переход сбрасывается при предоставлении нового значения TransitionState (57820a).

Внешний вклад

  • Из Создание 1.8.1: завершение анимации в SeekableTransitionState, если она уже превышает новую продолжительность, автор – Стивен Шон. (0c832c)

Версия 1.8

Версия 1.8.3

18 июня 2025 г.

Выход androidx.compose.animation:animation-*:1.8.3. Версия 1.8.3 содержит эти коммиты.

Версия 1.8.2

20 мая 2025 г.

Выход androidx.compose.animation:animation-*:1.8.2. Версия 1.8.2 содержит эти коммиты.

Версия 1.8.1

7 мая 2025 г.

Выход androidx.compose.animation:animation-*:1.8.1. Версия 1.8.1 содержит эти коммиты.

Внешний вклад

  • Завершать анимацию в SeekableTransitionState, если она уже длится дольше нового значения. Спасибо, Стивен Шон! (fbcdf7)

Версия 1.8.0

23 апреля 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0. Версия 1.8.0 содержит эти коммиты.

Важные изменения с версии 1.7.0

  • Важные изменения в версии 1.8.0 описаны в этой записи блога.
  • Новый Modifier.animateBounds API для анимации изменений размера и положения в пределах области предварительного просмотра. (94b939)
  • Финальные версии API для ключевых кадров с дугами и сплайнами (89e119)
  • Поддержка функции "Заглядывание вперед" в LazyGrid и Pager В частности, это касается различий между передачей мяча на ход вперед и передачей мяча на ход назад при прокрутке, композиции/расположении предметов и анимации предметов. При этом передача мяча на ход вперед используется в качестве источника достоверных данных для прокрутки и цели анимации предметов.
  • Названия параметров sharedElement изменены с state на sharedContentState, чтобы обеспечить единообразие во всех API общих элементов. (9e7df5)
  • Набор API AnimatedImageVector теперь стабилен.(69d7e0)

Версия 1.8.0-rc03

9 апреля 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-rc03. Версия 1.8.0-rc03 содержит эти коммиты.

Версия 1.8.0-rc02

26 марта 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-rc02. Версия 1.8.0-rc02 содержит эти коммиты.

Версия 1.8.0-rc01

12 марта 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-rc01. Версия 1.8.0-rc01 содержит эти коммиты.

Исправление ошибок

  • Исправлена ошибка, из-за которой дочерний переход ошибочно помечался как прерванный. (3fa2ce)

Версия 1.8.0-beta03

26 февраля 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-beta03. Версия 1.8.0-beta03 содержит эти коммиты.

Версия 1.8.0-beta02

12 февраля 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-beta02. Версия 1.8.0-beta02 содержит эти коммиты.

Версия 1.8.0-beta01

29 января 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-beta01. Версия 1.8.0-beta01 содержит эти коммиты.

Версия 1.8.0-alpha08

15 января 2025 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha08. Версия 1.8.0-alpha08 содержит эти коммиты.

Исправление ошибок

  • Исправлена ошибка, из-за которой анимация из animateBounds в LazyGrid была некорректной из-за сброса MotionFrameOfReferencePlacement. (16193b)
  • Исправлен внутренний запрос в SharedTransitionLayout путем перенаправления внутреннего запроса на проход с прогнозированием из корневого элемента прогнозирования верхнего уровня. (a07d12)
  • В документацию добавлены отсутствующие теги @param. (e5cf67)

Версия 1.8.0-alpha07

11 декабря 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha07. Версия 1.8.0-alpha07 содержит эти коммиты.

Новые функции

  • Поддержка предпросмотра в Pager, при котором проход предпросмотра отличается от прохода подхода для сохранения элементов и использования прокрутки. (b/371802474)

Исправление ошибок

  • Исправлена редкая ошибка, при которой общий элемент был создан, но не был измерен или размещен. Теперь общий элемент должен быть отрисован на месте хотя бы один раз, прежде чем он будет отрисован в оверлее. (b/371802474)

Версия 1.8.0-alpha06

13 ноября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha06. Версия 1.8.0-alpha06 содержит эти коммиты.

Изменения в API

  • Названия параметров sharedElement изменены с state на sharedContentState, чтобы обеспечить единообразие в API общих элементов. (I5694c, b/375351468)
  • Набор API AnimatedImageVector теперь стабилен. (I7174b, b/261436267)

Версия 1.8.0-alpha05

30 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha05. Версия 1.8.0-alpha05 содержит эти коммиты.

Новые функции

  • Прогноз теперь поддерживается на языке LazyGrid. В частности, это касается различий между передачей мяча на ход вперед и передачей мяча на ход назад при прокрутке, композиции/расположении предметов и анимации предметов. При этом передача мяча на ход вперед используется в качестве источника достоверных данных для прокрутки и цели анимации предметов.

Исправление ошибок

  • Обновление внутренних состояний для преобразования размера AnimatedContent при повторном создании перехода. Это гарантирует, что информация о целевом размере всегда будет актуальной. (b/372512085)

Версия 1.8.0-alpha04

16 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha04. Версия 1.8.0-alpha04 содержит эти коммиты.

Исправление ошибок

  • Исправлена ошибка, из-за которой некоторые кривые смягчения вызывали сбой при определенных временных интервалах.
  • Исправлена ошибка, из-за которой неправильно выравнивался символ Modifier.animateContentSize при использовании языка с написанием справа налево. (Idae6b, b/372055503)

Версия 1.8.0-alpha03

2 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha03. Версия 1.8.0-alpha03 содержит эти коммиты.

Изменения в API

  • Обновление версии Kotlin до 1.9 (I1a14c)

Исправление ошибок

  • Исправлена проблема с анимацией размера в компоненте AnimatedContent. Теперь анимация всегда начинается с текущего размера, что обеспечивает непрерывность.

Версия 1.8.0-alpha02

18 сентября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha02. Версия 1.8.0-alpha02 содержит эти коммиты.

Версия 1.8.0-alpha01

4 сентября 2024 г.

Выход androidx.compose.animation:animation-*:1.8.0-alpha01. Версия 1.8.0-alpha01 содержит эти коммиты.

Новые функции

  • Новый Modifier.animateBounds API для анимации изменений размера и положения в пределах области предварительного просмотра. 94b9394

Изменения в API

  • Удалены экспериментальные флаги в ключевых кадрах с дугами и сплайнами (89e1199).

Исправление ошибок

  • Пропускать логику placeHolderSize, если совпадение не найдено (77c0160)
  • Ограничение времени воспроизведения в AndroidFlingSpline для предотвращения сбоев из-за немонотонного увеличения времени воспроизведения(9d47587)
  • Исправлена ошибка, из-за которой SharedTransitionScope не отрисовывал элементы при определенных условиях (b41077b6)

Внешний вклад

  • Запрет на установку перехода с возможностью поиска playTime, когда переход не выполняется (Steven Schoen). (c2e6e7e6)

Версия 1.7

Версия 1.7.8

12 февраля 2025 г.

Выход androidx.compose.animation:animation-*:1.7.8. Версия 1.7.8 содержит эти коммиты.

Версия 1.7.7

29 января 2025 г.

Выход androidx.compose.animation:animation-*:1.7.7. Изменений по сравнению с версией 1.7.6 нет. 11 декабря 2024 г.

Выход androidx.compose.animation:animation-*:1.7.6. Версия 1.7.6 содержит эти коммиты.

Версия 1.7.5

30 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.7.5. Версия 1.7.5 содержит эти коммиты.

Исправление ошибок

  • Исправлена ошибка, из-за которой неправильно выравнивался символ Modifier.animateContentSize при использовании языка с написанием справа налево. (Idae6b, b/372055503)

Версия 1.7.4

16 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.7.4. Версия 1.7.4 содержит эти коммиты.

Версия 1.7.3

2 октября 2024 г.

Выход androidx.compose.animation:animation-*:1.7.3. Версия 1.7.3 содержит эти коммиты.

Версия 1.7.2

18 сентября 2024 г.

Выход androidx.compose.animation:animation-*:1.7.2. Версия 1.7.2 содержит эти коммиты.

Внешний вклад

  • Запрет на установку перехода с возможностью перемотки playTime, когда переход не выполняется. Спасибо, Стивен Шон! (c2e6e7e6)

Версия 1.7.1

10 сентября 2024 г.

  • Объекты Android не изменились. Удалено -desktop артефактов, добавлено -jvmStubs и -linuxx64Stubs артефактов. Ни один из этих целевых показателей не предназначен для использования. Это плейсхолдеры, которые помогают Jetbrains Compose.

Версия 1.7.0

4 сентября 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0.

Важные изменения с версии 1.6.0

Важные изменения в версии 1.7.0 описаны в этой записи блога.

Новые API для перехода общих элементов

  • Новые API для перехода между общими элементами ждут ваших отзывов. Эти новые экспериментальные API позволяют помечать макеты как общие для дерева макетов с помощью предоставленных модификаторов, обеспечивая плавное изменение границ, когда один набор общего контента выходит, а другой входит. (Icb0b9)
  • Новые scaleInSharedContentToBounds и scaleOutSharedContentToBounds для масштабирования контента в sharedBounds (I731c1)
  • Экспериментальный класс SharedTransitionScope теперь является интерфейсом. (Iaf856)
  • Новый параметр resizeModes (ScaleToBounds и RemeasureToBounds) для sharedBounds, позволяющий выбирать между масштабированием и повторным измерением. Прежние API scaleIn/OutSharedContentToBounds больше не поддерживаются. (I0d41a)

Улучшения существующих API:

  • Новый тег Modifier.animateContentSize, который принимает дополнительный параметр для выравнивания специального контента. (I5623a, b/269803907)
  • Новый экспериментальный DeferredTargetAnimation для анимации размера, положения или любого другого целевого объекта, который неизвестен во время создания экземпляра. (I60745)
  • SeekableTransitionState заменяет snapTo() на seekTo() и добавляет snapTo(), который сразу же переводит состояние в целевое без какой-либо анимации.
  • Теперь вы можете передавать значение periodicBias (Float) в keyframesWithSpline. В результате начальная и конечная скорости сплайна будут равны. Полезно для повторяющихся анимаций с использованием сплайнов. Смещение показывает, насколько нужно изменить начальную и конечную скорости, чтобы достичь периодичности. (Ic1e6c, b/292114811)

Следующие API стали стабильными или были удалены:

  • AnimatedVisibilityScope.transition теперь стабильный API. Modifier.animateEnterExit(..) также стал стабильным. (I6c1d1)
  • ApproachLayoutModifierNode и Modifier.approachLayout теперь стабильны, а старые isMeasurementApproachComplete() и isPlacementApproachComplete() заменены новыми isMeasurementApproachInProgress() и isPlacementApproachInProgress() соответственно.
  • Удален устаревший модификатор intermediateLayout. (I3e91c)
  • LookaheadScope API стали стабильнее. (I21507)

Версия 1.7.0-rc01

21 августа 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-rc01. Версия 1.7.0-rc01 содержит эти коммиты.

Версия 1.7.0-beta07

7 августа 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta07. Версия 1.7.0-beta07 содержит эти коммиты.

Исправление ошибок

  • Исправлена ошибка, из-за которой SharedTransitionScope не отрисовывал наложенные элементы во время перехода при определенных условиях, обычно связанных с использованием Navigation. (Id65ab, b/347520198)

Версия 1.7.0-beta06

24 июля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta06. Версия 1.7.0-beta06 содержит эти коммиты.

Исправление ошибок

  • Исправлена утечка состояний перехода SeekableTransition путем правильной очистки наблюдений из SnapshotStateObserver при удалении перехода. (b9c7182)
  • Исправлены пограничные случаи, когда дочерние переходы не отмечались как завершенные после завершения родительского перехода. (dc42216)

Версия 1.7.0-beta05

10 июля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta05. Версия 1.7.0-beta05 содержит эти коммиты.

Исправление ошибок

  • Свойство Transition totalDurationNanos теперь можно правильно прочитать в snapshotFlow.

Версия 1.7.0-beta04

26 июня 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta04. Версия 1.7.0-beta04 содержит эти коммиты.

Версия 1.7.0-beta03

12 июня 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta03. Версия 1.7.0-beta03 содержит эти коммиты.

Версия 1.7.0-beta02

29 мая 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta02. Версия 1.7.0-beta02 содержит эти коммиты.

Версия 1.7.0-beta01

14 мая 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-beta01. Версия 1.7.0-beta01 содержит эти коммиты.

Изменения в API

  • Новый параметр resizeModes (ScaleToBounds и RemeasureToBounds) для sharedBounds, позволяющий выбирать между масштабированием и повторным измерением. Прежние API scaleIn/OutSharedContentToBounds больше не поддерживаются. (I0d41a)

Внешний вклад

  • Экспериментальный класс SharedTransitionScope теперь является интерфейсом, а не классом (автор – Стивен Шон). (Iaf856, b/338415048, b/338414702)

Версия 1.7.0-alpha08

1 мая 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha08. Версия 1.7.0-alpha08 содержит эти коммиты.

Изменения в API

  • LookaheadScope API стали стабильнее. (I21507)

Внешний вклад

  • Удаление времени начала анимации после того, как SeekableTransitionState анимируется или привязывается, от Стивена Шона (1ca89529)

Версия 1.7.0-alpha07

17 апреля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha07. Версия 1.7.0-alpha07 содержит эти коммиты.

Новые функции

  • Новые API для перехода между общими элементами ждут ваших отзывов. Эти новые экспериментальные API позволяют помечать макеты как общие для дерева макетов с помощью предоставленных модификаторов, обеспечивая плавное изменение границ, когда один набор общего контента выходит, а другой входит. (Icb0b9)
  • Новые scaleInSharedContentToBounds и scaleOutSharedContentToBounds для масштабирования контента в sharedBounds (I731c1)

Изменения в API

  • AnimatedVisibilityScope.transition теперь стабильный API. Modifier.animateEnterExit(..) также стал стабильным. (I6c1d1)
  • ApproachLayoutModifierNode и Modifier.approachLayout теперь стабильны, а старые isMeasurementApproachComplete() и isPlacementApproachComplete() заменены новыми isMeasurementApproachInProgress() и isPlacementApproachInProgress() соответственно.
  • Удален устаревший модификатор intermediateLayout. (I3e91c)
  • Теперь вы можете передавать значение periodicBias (Float) в keyframesWithSpline. В результате начальная и конечная скорости сплайна будут равны. Полезно для повторяющихся анимаций с использованием сплайнов. Смещение показывает, насколько нужно изменить начальную и конечную скорости, чтобы достичь периодичности. (Ic1e6c, b/292114811)

Исправление ошибок

  • Исправлены ошибки, из-за которых кривые смягчения выходили за пределы диапазона 0..1 (I38747).

Версия 1.7.0-alpha06

3 апреля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha06. Версия 1.7.0-alpha06 содержит эти коммиты.

Новые функции

  • В LazyColumn и LazyRow добавлена поддержка анимации появления и исчезновения объектов. Ранее можно было добавить модификатор Modifier.animateItemPlacement(), чтобы поддерживать анимацию размещения (изменения порядка). Мы прекратили поддержку этого модификатора и добавили новый неэкспериментальный модификатор Modifier.animateItem(), который позволяет использовать все три типа анимации: появление (затемнение), исчезновение (затемнение) и изменение порядка. (I2d7f7, b/330152398, b/150812265)

Исправление ошибок

  • Повышена эффективность updateTransition API.

Версия 1.7.0-alpha05

20 марта 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha05. Версия 1.7.0-alpha05 содержит эти коммиты.

Изменения в API

  • SeekableTransitionState заменяет snapTo() на seekTo() и добавляет snapTo(), который сразу же переводит объект в целевое состояние без анимации.

Версия 1.7.0-alpha04

6 марта 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha04. Версия 1.7.0-alpha04 содержит эти коммиты.

Изменения в API

  • Новый API Path.reverse() для изменения направления пути (I36348)

Версия 1.7.0-alpha03

21 февраля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha03. Версия 1.7.0-alpha03 содержит следующие коммиты:

Новые функции

  • Новый тег Modifier.animateContentSize, который принимает дополнительный параметр для выравнивания специального контента. (I5623a, b/269803907)
  • Новый экспериментальный DeferredTargetAnimation для анимации размера, положения или любого другого целевого объекта, который неизвестен во время создания экземпляра. (I60745)

Версия 1.7.0-alpha02

7 февраля 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha02. Версия 1.7.0-alpha02 содержит следующие коммиты:

Исправление ошибок

  • Исправлена проблема совместимости с KeyframesSpec. (I2bdf3, b/322214617)
  • Исправлена ошибка, из-за которой при использовании в LazyList не сбрасывалось значение Modifier.animateContentSize. (I070512, b/322525716)
  • Исправлена ошибка IllegalStateException на KeyframesSpec при использовании временных меток вне диапазона. (I341b8, b/322839811)

Версия 1.7.0-alpha01

24 января 2024 г.

Выход androidx.compose.animation:animation-*:1.7.0-alpha01. Версия 1.7.0-alpha01 содержит следующие коммиты:

Версия 1.6

Версия 1.6.8

12 июня 2024 г.

Выход androidx.compose.animation:animation-*:1.6.8. Версия 1.6.8 содержит эти коммиты.

Версия 1.6.7

1 мая 2024 г.

Выход androidx.compose.animation:animation-*:1.6.7. Версия 1.6.7 содержит эти коммиты.

Версия 1.6.6

17 апреля 2024 г.

Выход androidx.compose.animation:animation-*:1.6.6. Нет изменений по сравнению с предыдущей версией

Версия 1.6.5

3 апреля 2024 г.

Выход androidx.compose.animation:animation-*:1.6.5. Версия 1.6.5 содержит эти коммиты.

Версия 1.6.4

20 марта 2024 г.

Выход androidx.compose.animation:animation-*:1.6.4. Версия 1.6.4 содержит эти коммиты.

Версия 1.6.3

6 марта 2024 г.

Выход androidx.compose.animation:animation-*:1.6.3. Версия 1.6.3 содержит эти коммиты.

Версия 1.6.2

21 февраля 2024 г.

Выход androidx.compose.animation:animation-*:1.6.2. Версия 1.6.2 содержит следующие коммиты:

Версия 1.6.1

7 февраля 2024 г.

Выход androidx.compose.animation:animation-*:1.6.1. Версия 1.6.1 содержит следующие коммиты:

Исправление ошибок

  • Исправлена проблема совместимости с KeyframesSpec. (I2bdf3, b/322214617)

Версия 1.6.0

24 января 2024 г.

Выход androidx.compose.animation:animation-*:1.6.0. Версия 1.6.0 содержит следующие коммиты:

Версия 1.6.0-rc01

10 января 2024 г.

Выход androidx.compose.animation:animation-*:1.6.0-rc01. Версия 1.6.0-rc01 содержит следующие коммиты:

Версия 1.6.0-beta03

13 декабря 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-beta03. Версия 1.6.0-beta03 содержит следующие коммиты:

Изменения в API

  • Временно удалены scaleInToFitContainer и scaleOutToFitContainer из AnimatedContentTransitionScope, так как они требуют предварительного просмотра. Они будут доступны, когда функция "Предварительный просмотр" включена по умолчанию или вручную в будущих выпусках.

Версия 1.6.0-beta02

29 ноября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-beta02. Версия 1.6.0-beta02 содержит следующие коммиты.

Версия 1.6.0-beta01

15 ноября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-beta01. Версия 1.6.0-beta01 содержит следующие коммиты:

Изменения в API

  • ExitTransition.Hold переименован в ExitTransition.KeepUntilTransitionsFinished, чтобы сделать его более понятным. (I1c490)
  • Теперь с помощью функции keyframesWithSpline можно интерполировать любые N-мерные значения, используя монотонные сплайны. Особенно полезно интерполировать позиционные значения, такие как Offset, IntOffset, DpOffset. Добавлен как экспериментальный API.

Исправление ошибок

  • Добавлена поддержка рендеринга кругового градиента в ArcLine. (I4d5bb)
  • Реализуйте equals и hashcode для PageSize.Fixed. (Ie3ede, b/300134276)
  • Исправлена проблема совместимости исполняемых файлов при изменении отступа окна. (Iee695)
  • Удален основной слой Material для чипа/кнопки Material3, поскольку микротесты показывают, что без него производительность выше. (I55555)

Версия 1.6.0-alpha08

18 октября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha08. Версия 1.6.0-alpha08 содержит следующие коммиты.

Изменения в API

  • Устаревший метод KeyframesSpecConfig#with заменен на KeyframesSpecConfig#using, который сохраняет шаблон построителя. (I1d769)

Версия 1.6.0-alpha07

4 октября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha07. Версия 1.6.0-alpha07 содержит следующие коммиты:

Изменения в API

  • У фиксированных и прокручиваемых вкладок теперь есть основной и дополнительный варианты. Они правильно сопоставляются с цветом и поведением индикатора, как определено в Material3.
  • PrimaryScrollableTabRow и SecondaryScrollableTabRow теперь показывают состояние прокрутки. (Iec8f5, b/260572337)

Версия 1.6.0-alpha06

20 сентября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha06. Версия 1.6.0-alpha06 содержит следующие коммиты:

Версия 1.6.0-alpha05

6 сентября 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha05. Версия 1.6.0-alpha05 содержит следующие коммиты:

Изменения в API

  • Добавлен параметр PathEasing, позволяющий задавать произвольный путь для кривой смягчения. (Idb4b9)

Версия 1.6.0-alpha04

23 августа 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha04. Версия 1.6.0-alpha04 содержит следующие коммиты:

Изменения в API

  • Добавьте SeekableTransitionState, чтобы разработчики могли контролировать ход перехода. (I8e69d)

Версия 1.6.0-alpha03

9 августа 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha03. Версия 1.6.0-alpha03 содержит следующие коммиты:

Изменения в API

  • Новый тип перехода, при котором контент масштабируется в зависимости от размера анимированного контейнера во время анимации появления и исчезновения. LookaheadScope Компонуемые функции и интерфейс теперь стабильны. (Ifb2ce)

Версия 1.6.0-alpha02

26 июля 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha02. Версия 1.6.0-alpha02 содержит следующие коммиты:

Изменения в API

  • Новый ExitTransition.Hold для отображения исходящего контента в AnimatedContent, пока не завершатся оба перехода (появление и исчезновение). (I5984f)
  • Дополнительные аннотации для указания разрешенных входных данных для композиций (I51109)

Версия 1.6.0-alpha01

21 июня 2023 г.

Выход androidx.compose.animation:animation-*:1.6.0-alpha01. Версия 1.6.0-alpha01 содержит следующие коммиты:

Новые функции

  • Чтобы полностью интегрировать Modifier.animateContentSize и AnimatedVisibility в систему предварительного просмотра, сообщите целевой размер в проходе предварительного просмотра.

Изменения в API

  • Новый ресурс в IntrinsincMeasureScope и его реализации (например, MeasureScope), чтобы указать, является ли текущий проход по тактам проходом с предпросмотром. (I7a812)

Исправление ошибок

  • Удалены распределения из анимаций Spring. (Ie9431)
  • Изменено название параметра value для Enum.valueOf (Ia9b89)
  • больше исключений, вызванных методом enum valueOf (I818fe)

Версия 1.5

Версия 1.5.4

18 октября 2023 г.

Выход androidx.compose.animation:animation-*:1.5.4. Версия 1.5.4 содержит следующие коммиты:

Версия 1.5.3

4 октября 2023 г.

Выход androidx.compose.animation:animation-*:1.5.3. В этой версии нет изменений.

Версия 1.5.2

27 сентября 2023 г.

Выход androidx.compose.animation:animation-*:1.5.2. Версия 1.5.2 содержит следующие коммиты:

Версия 1.5.1

6 сентября 2023 г.

Выход androidx.compose.foundation:foundation-*:1.5.1. Версия 1.5.1 содержит следующие коммиты:

Исправление ошибок

  • Исправлена ошибка, из-за которой в фиксированных текстовых полях показывалась клавиатура и их можно было редактировать, когда для параметра readOnly было задано значение true. Также исправлена ошибка, из-за которой клавиатура не показывалась, когда значение readOnly менялось с true на false при фокусе. (I34a19, b/246909589)

Версия 1.5.1

6 сентября 2023 г.

Выход androidx.compose.animation:animation-*:1.5.1. Версия 1.5.1 содержит следующие коммиты:

Версия 1.5.0

9 августа 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0. Версия 1.5.0 содержит следующие коммиты:

Версия 1.5.0-rc01

26 июля 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-rc01. Версия 1.5.0-rc01 содержит следующие коммиты:

Исправление ошибок

  • Устранена проблема, из-за которой при вызове .value для примитивного типа состояния (например, MutableIntState) появлялось предупреждение линтера с недействительным исправлением. Теперь при проверке будет рекомендовано перейти на правильный ресурс. (Iba953, b/287279257)

  • Доступна необязательная проверка, которая рекомендует перенести mutableStateOf() вызовов в соответствующие специализированные типы для примитивов. Идентификатор правила: AutoboxingStateCreation. Ранее эта проверка была включена по умолчанию для всех проектов. Чтобы это предупреждение показывалось в редакторе Android Studio и в результатах проверки кода, измените его уровень серьезности с информационного на предупреждение (или выше), объявив warning "AutoboxingStateCreation" в конфигурации build.gradle или build.gradle.kts модуля, как показано ниже (I34f7e):

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

Версия 1.5.0-beta03

28 июня 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-beta03. Версия 1.5.0-beta03 содержит следующие коммиты:

Версия 1.5.0-beta02

7 июня 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-beta02. Версия 1.5.0-beta02 содержит следующие коммиты:

Версия 1.5.0-beta01

24 мая 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-beta01. Версия 1.5.0-beta01 содержит следующие коммиты:

Изменения в API

  • Удалены выделения в перекомпоновке, цветовых анимациях и AndroidComposeView (Ib2bfa)

Исправление ошибок

  • Удалены распределения из пружинных анимаций (Ie9431)

Версия 1.5.0-alpha04

10 мая 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-alpha04. Версия 1.5.0-alpha04 содержит следующие коммиты:

Изменения в API

  • ContentKey теперь поддерживается в AnimatedContent, чтобы вы могли лучше контролировать переход. (Ic069b)

Версия 1.5.0-alpha03

19 апреля 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-alpha03. Версия 1.5.0-alpha03 содержит следующие коммиты:

Новые функции

  • Новое поведение по умолчанию для свойства SubcomposeLayout в LookaheadScope. Это позволяет объявлениям SubcomposeLayouts, в которых нет условных мест размещения (например, TabRow, Scaffold, BoxWithConstraints и т.д.), корректно работать с анимацией с предварительной загрузкой.

Изменения в API

  • Новое значение по умолчанию intermediateMeasurePolicy, которое повторно использует правила для показателей из предварительного просмотра, позволяет подтипам SubcomposeLayout без условных слотов, таким как Scaffold, TabRow и BoxWithConstraints, работать с предварительным просмотром по умолчанию. (Id84c8)
  • Переименуйте инфиксную функцию fun with в togetherWith, чтобы объединить переходы при появлении и исчезновении. Новый параметр AnimatedContentScope в качестве получателя для лямбда-функции контента. (Ic39ae)

Версия 1.5.0-alpha02

5 апреля 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-alpha02. Версия 1.5.0-alpha02 содержит следующие коммиты:

Новые функции

  • Новый экспериментальный API для поддержки предпросмотра в SubcomposeLayout. Это позволит SubcomposeLayout правильно работать в LookaheadScope. В ближайшее время мы добавим поддержку других подтипов SubcomposeLayout.

Изменения в API

  • Новый API SubcomposeLayout, который принимает дополнительное промежуточное правило для обработки логики измерения/макета во время анимации на основе предварительного просмотра. (I017d3)

Версия 1.5.0-alpha01

22 марта 2023 г.

Выход androidx.compose.animation:animation-*:1.5.0-alpha01. Версия 1.5.0-alpha01 содержит следующие коммиты:

Изменения в API

  • API AnimatedContent теперь стабильны. AnimatedContentScope переименован в AnimatedContentTransitionScope. scaleIn и scaleOut теперь стабильные API. (Iaf54e)

Версия 1.4

Версия 1.4.3

3 мая 2023 г.

androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3 и androidx.compose.animation:animation-graphics:1.4.3 выпущены без изменений (только с обновлением версии).

Версия 1.4.2

19 апреля 2023 г.

androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2 и androidx.compose.animation:animation-graphics:1.4.2 выпущены без изменений. Версия 1.4.2 содержит следующие коммиты:

Версия 1.4.1

5 апреля 2023 г.

androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1 и androidx.compose.animation:animation-graphics:1.4.1 выпущены без изменений. Версия 1.4.1 содержит следующие коммиты:

Версия 1.4.0

22 марта 2023 г.

androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0 и androidx.compose.animation:animation-graphics:1.4.0. Версия 1.4.0 содержит следующие коммиты:

Важные изменения с версии 1.3.0

  • Ярлык инструментария поддерживается в rememberInfiniteTransition и всех функциях расширения для InfiniteTransition и Transition (например, InfiniteTransition#animateColor) (I56ef7).

Версия 1.4.0-rc01

8 марта 2023 г.

androidx.compose.animation:animation:1.4.0-rc01, androidx.compose.animation:animation-core:1.4.0-rc01 и androidx.compose.animation:animation-graphics:1.4.0-rc01 выпущены без изменений. Версия 1.4.0-rc01 содержит следующие коммиты.

Версия 1.4.0-beta02

22 февраля 2023 г.

androidx.compose.animation:animation:1.4.0-beta02, androidx.compose.animation:animation-core:1.4.0-beta02 и androidx.compose.animation:animation-graphics:1.4.0-beta02 выпущены без изменений. Версия 1.4.0-beta02 содержит следующие коммиты:

Версия 1.4.0-beta01

8 февраля 2023 г.

androidx.compose.animation:animation:1.4.0-beta01, androidx.compose.animation:animation-core:1.4.0-beta01 и androidx.compose.animation:animation-graphics:1.4.0-beta01 выпущены без изменений. Версия 1.4.0-beta01 содержит следующие коммиты:

Версия 1.4.0-alpha05

25 января 2023 г.

androidx.compose.animation:animation:1.4.0-alpha05, androidx.compose.animation:animation-core:1.4.0-alpha05 и androidx.compose.animation:animation-graphics:1.4.0-alpha05. Версия 1.4.0-alpha05 содержит следующие коммиты.

Изменения

  • В библиотеках анимации нет изменений с момента выхода последней альфа-версии.

Версия 1.4.0-alpha04

11 января 2023 г.

androidx.compose.animation:animation:1.4.0-alpha04, androidx.compose.animation:animation-core:1.4.0-alpha04 и androidx.compose.animation:animation-graphics:1.4.0-alpha04. Версия 1.4.0-alpha04 содержит следующие коммиты:

Новые функции

  • Поддержка ярлыка инструментария в rememberInfiniteTransition и всех функциях расширения для InfiniteTransition и Transition (например, InfiniteTransition#animateColor) (I56ef7)

Изменения в API

  • API InfiniteTransition#TransitionAnimationState и InfiniteTransition#animations теперь общедоступны. (I36682)

Версия 1.4.0-alpha03

7 декабря 2022 г.

androidx.compose.animation:animation:1.4.0-alpha03, androidx.compose.animation:animation-core:1.4.0-alpha03 и androidx.compose.animation:animation-graphics:1.4.0-alpha03. Версия 1.4.0-alpha03 содержит следующие коммиты:

Изменения в API

  • В тестах интерфейса, использующих правило Compose, продолжения, возобновленные во время обратных вызовов withFrameNanos, не будут отправлены, пока не будут выполнены все обратные вызовы фрейма. Это соответствует поведению при обычном создании письма. Однако тесты, которые полагаются на старое поведение, могут завершиться неудачно. Это должно повлиять только на код, который напрямую вызывает withFrameNanos или withFrameMillis, и на логику вне обратного вызова, переданного этим функциям, которую, возможно, потребуется перенести внутрь обратных вызовов. Примеры изменений в тесте анимации можно найти в этом списке изменений.
  • В конструктор TestMonotonicFrameClock и фабричную функцию добавили необязательный параметр onPerformTraversals: (Long) -> Unit, чтобы можно было выполнять код после обратных вызовов withFrameNanos, но до возобновления работы сопрограмм вызывающих функций. (Idb413, b/254115946, b/222093277, b/255802670)
  • Новый параметр в группе AnimatedContent для ярлыка инструмента (Iebe2d)

Версия 1.4.0-alpha02

9 ноября 2022 г.

androidx.compose.animation:animation:1.4.0-alpha02, androidx.compose.animation:animation-core:1.4.0-alpha02 и androidx.compose.animation:animation-graphics:1.4.0-alpha02. Версия 1.4.0-alpha02 содержит следующие коммиты:

Изменения в API

  • Добавлен параметр ToolingState, позволяющий инструментам изменять внутреннее состояние объекта Composable (Ie6614).

Версия 1.4.0-alpha01

24 октября 2022 г.

androidx.compose.animation:animation:1.4.0-alpha01, androidx.compose.animation:animation-core:1.4.0-alpha01 и androidx.compose.animation:animation-graphics:1.4.0-alpha01. Версия 1.4.0-alpha01 содержит следующие коммиты:

Исправление ошибок

  • Исправлена некорректная анимация прерывания в AnimatedContent (b/238662479).

Версия 1.3

Версия 1.3.3

11 января 2023 г.

androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3 и androidx.compose.animation:animation-graphics:1.3.3. Версия 1.3.3 содержит следующие коммиты:

  • Изменений по сравнению с версией 1.3.2 нет.

Версия 1.3.2

7 декабря 2022 г.

androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2 и androidx.compose.animation:animation-graphics:1.3.2. Версия 1.3.2 содержит следующие коммиты:

Исправление ошибок

  • Обновлена поддержка androidx.compose.ui 1.3.2

Версия 1.3.1

9 ноября 2022 г.

androidx.compose.animation:animation:1.3.1, androidx.compose.animation:animation-core:1.3.1 и androidx.compose.animation:animation-graphics:1.3.1. Версия 1.3.1 содержит следующие коммиты:

Версия 1.3.0

24 октября 2022 г.

androidx.compose.animation:animation:1.3.0, androidx.compose.animation:animation-core:1.3.0 и androidx.compose.animation:animation-graphics:1.3.0. Версия 1.3.0 содержит следующие коммиты:

Важные изменения с версии 1.2.0

  • Новый набор функций сглаживания стал стабильным

Версия 1.3.0-rc01

5 октября 2022 г.

androidx.compose.animation:animation:1.3.0-rc01, androidx.compose.animation:animation-core:1.3.0-rc01 и androidx.compose.animation:animation-graphics:1.3.0-rc01. Версия 1.3.0-rc01 содержит следующие коммиты:

Версия 1.3.0-beta03

21 сентября 2022 г.

androidx.compose.animation:animation:1.3.0-beta03, androidx.compose.animation:animation-core:1.3.0-beta03 и androidx.compose.animation:animation-graphics:1.3.0-beta03. Версия 1.3.0-beta03 содержит следующие коммиты:

  • Изменений по сравнению с версией 1.3.0-beta02 нет.

Версия 1.3.0-beta02

7 сентября 2022 г.

androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02 и androidx.compose.animation:animation-graphics:1.3.0-beta02. Версия 1.3.0-beta02 содержит следующие коммиты:

  • Удален Kotlin.experimental из параметров компилятора, так как он устарел.

Версия 1.3.0-beta01

24 августа 2022 г.

androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01 и androidx.compose.animation:animation-graphics:1.3.0-beta01. Версия 1.3.0-beta01 содержит следующие коммиты:

Версия 1.3.0-alpha03

10 августа 2022 г.

androidx.compose.animation:animation:1.3.0-alpha03, androidx.compose.animation:animation-core:1.3.0-alpha03 и androidx.compose.animation:animation-graphics:1.3.0-alpha03. Версия 1.3.0-alpha03 содержит следующие коммиты:

Изменения в API

  • Новый параметр в Crossfade, animateAsState и Animatable для ярлыка инструмента (Iac08a)
  • Добавлена функция atFraction, позволяющая определять ключевые кадры не по длительности, а по доле. (I20c76, b/232059455)

Версия 1.3.0-alpha02

27 июля 2022 г.

androidx.compose.animation:animation:1.3.0-alpha02, androidx.compose.animation:animation-core:1.3.0-alpha02 и androidx.compose.animation:animation-graphics:1.3.0-alpha02. Версия 1.3.0-alpha02 содержит следующие коммиты:

Версия 1.3.0-alpha01

29 июня 2022 г.

androidx.compose.animation:animation:1.3.0-alpha01, androidx.compose.animation:animation-core:1.3.0-alpha01 и androidx.compose.animation:animation-graphics:1.3.0-alpha01. Версия 1.3.0-alpha01 содержит следующие коммиты:

Изменения в API

  • Новый LookaheadLayout, который поддерживает предварительный проход перед фактическим измерением/макетом. Это позволяет предварительно рассчитать макет при его изменении, а также использовать предварительно рассчитанные размеры и положение для анимации размера и положения в целевом направлении. SubcomposeLayouts пока не поддерживаются, но будут добавлены в одном из следующих выпусков. (I477f5)

Версия 1.2

Версия 1.2.1

10 августа 2022 г.

androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1 и androidx.compose.animation:animation-graphics:1.2.1. Версия 1.2.1 содержит следующие коммиты:

Версия 1.2.0

27 июля 2022 г.

androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0 и androidx.compose.animation:animation-graphics:1.2.0. Версия 1.2.0 содержит следующие коммиты:

Важные изменения с версии 1.1.0

  • Теперь при создании анимации Compose учитывается параметр "Масштаб длительности аниматора" из настроек для разработчиков.
  • Большой выбор новых экспериментальных кривых смягчения.
  • AnimatedImageVector теперь поддерживает repeatCount и repeatMode

Версия 1.2.0-rc03

29 июня 2022 г.

androidx.compose.animation:animation:1.2.0-rc03, androidx.compose.animation:animation-core:1.2.0-rc03 и androidx.compose.animation:animation-graphics:1.2.0-rc03. Версия 1.2.0-rc03 содержит следующие коммиты:

  • Изменений по сравнению с версией 1.2.0-rc02 нет.

Версия 1.2.0-rc02

22 июня 2022 г.

androidx.compose.animation:animation:1.2.0-rc02, androidx.compose.animation:animation-core:1.2.0-rc02 и androidx.compose.animation:animation-graphics:1.2.0-rc02. Версия 1.2.0-rc02 содержит следующие коммиты:

Исправление ошибок

  • Удалена аннотация ExperimentalEasingApi для функций сглаживания (Ied441)

Версия 1.2.0-rc01

15 июня 2022 г.

androidx.compose.animation:animation:1.2.0-rc01, androidx.compose.animation:animation-core:1.2.0-rc01 и androidx.compose.animation:animation-graphics:1.2.0-rc01. Версия 1.2.0-rc01 содержит следующие коммиты:

Изменения в API

  • Интерфейсы в библиотеках Compose теперь создаются с помощью методов интерфейса по умолчанию из JDK8 (I5bcf1).

Версия 1.2.0-beta03

1 июня 2022 г.

androidx.compose.animation:animation:1.2.0-beta03, androidx.compose.animation:animation-core:1.2.0-beta03 и androidx.compose.animation:animation-graphics:1.2.0-beta03. Версия 1.2.0-beta03 содержит следующие коммиты:

Изменения в API

  • Добавлены экспериментальные кривые смягчения для анимации (I64a38)

Версия 1.2.0-beta02

18 мая 2022 г.

androidx.compose.animation:animation:1.2.0-beta02, androidx.compose.animation:animation-core:1.2.0-beta02 и androidx.compose.animation:animation-graphics:1.2.0-beta02. Версия 1.2.0-beta02 содержит следующие коммиты:

Версия 1.2.0-beta01

11 мая 2022 г.

androidx.compose.animation:animation:1.2.0-beta01, androidx.compose.animation:animation-core:1.2.0-beta01 и androidx.compose.animation:animation-graphics:1.2.0-beta01. Версия 1.2.0-beta01 содержит следующие коммиты:

  • Это первая бета-версия 1.2. С момента выпуска последней альфа-версии изменений не было.

Версия 1.2.0-alpha08

20 апреля 2022 г.

androidx.compose.animation:animation:1.2.0-alpha08, androidx.compose.animation:animation-core:1.2.0-alpha08 и androidx.compose.animation:animation-graphics:1.2.0-alpha08. Версия 1.2.0-alpha08 содержит следующие коммиты:

Версия 1.2.0-alpha07

6 апреля 2022 г.

androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07 и androidx.compose.animation:animation-graphics:1.2.0-alpha07. Версия 1.2.0-alpha07 содержит следующие коммиты:

Изменения в API

  • AnimatedImageVector теперь поддерживает repeatCount и repeatMode (Ia3e75, b/199304067)

Версия 1.2.0-alpha06

23 марта 2022 г.

androidx.compose.animation:animation:1.2.0-alpha06, androidx.compose.animation:animation-core:1.2.0-alpha06 и androidx.compose.animation:animation-graphics:1.2.0-alpha06. Версия 1.2.0-alpha06 содержит следующие коммиты:

Изменения в API

  • Обновлен синтаксический анализ векторных изображений, чтобы поддерживать автоматическое зеркальное отображение контента элемента VectorPainter, если текущее направление макета – справа налево. (I79cd9, b/185760237)

Исправление ошибок

  • В API векторной графики теперь используется правильная аннотация composable @VectorComposable вместо @UiComposable (I942bc).

Версия 1.2.0-alpha05

9 марта 2022 г.

androidx.compose.animation:animation:1.2.0-alpha05, androidx.compose.animation:animation-core:1.2.0-alpha05 и androidx.compose.animation:animation-graphics:1.2.0-alpha05. Версия 1.2.0-alpha05 содержит следующие коммиты:

Изменения в API

  • Впечатляет! Теперь при создании анимации учитывается параметр "Масштаб длительности анимации" из настроек разработчика. (I5a4fc, b/161675988)

Версия 1.2.0-alpha04

23 февраля 2022 г.

androidx.compose.animation:animation:1.2.0-alpha04, androidx.compose.animation:animation-core:1.2.0-alpha04 и androidx.compose.animation:animation-graphics:1.2.0-alpha04. Версия 1.2.0-alpha04 содержит следующие коммиты:

Версия 1.2.0-alpha03

9 февраля 2022 г.

androidx.compose.animation:animation:1.2.0-alpha03, androidx.compose.animation:animation-core:1.2.0-alpha03 и androidx.compose.animation:animation-graphics:1.2.0-alpha03. Версия 1.2.0-alpha03 содержит следующие коммиты:

Версия 1.2.0-alpha02

26 января 2022 г.

androidx.compose.animation:animation:1.2.0-alpha02, androidx.compose.animation:animation-core:1.2.0-alpha02 и androidx.compose.animation:animation-graphics:1.2.0-alpha02. Версия 1.2.0-alpha02 содержит следующие коммиты:

Версия 1.2.0-alpha01

12 января 2022 г.

androidx.compose.animation:animation:1.2.0-alpha01, androidx.compose.animation:animation-core:1.2.0-alpha01 и androidx.compose.animation:animation-graphics:1.2.0-alpha01. Версия 1.2.0-alpha01 содержит следующие коммиты:

Изменения в API

  • Используйте AnimatedImageVector.animatedVectorResource вместо animatedVectorResource, чтобы загрузить файл ресурса <animated-vector>.
    • Используйте rememberAnimatedVectorResource вместо AnimatedImageVector#painterFor, чтобы отобразить AnimatedImageVector. (I9c300)

Исправление ошибок

  • Добавлены методы toString в Animatable и AnimationResult. (Icd3a6)

Обновления зависимостей

  • Теперь зависит от Kotlin 1.6.10.

Версия 1.1

Версия 1.1.1

23 февраля 2022 г.

androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1 и androidx.compose.animation:animation-graphics:1.1.1. Версия 1.1.1 содержит следующие коммиты:

Исправление ошибок

  • Исправлена ошибка NullPointerException в androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059, b/206677462)
  • Исправлен сбой, вызванный содержимым буфера обмена при чтении из него на устройстве Android. (I06020, b/197769306)
  • Исправлена поддержка письма справа налево в LazyVerticalGrid (aosp/1931080, b/207510535).

Версия 1.1.0

9 февраля 2022 г.

androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0 и androidx.compose.animation:animation-graphics:1.1.0. Версия 1.1.0 содержит следующие коммиты:

Важные изменения с версии 1.0.0

  • Стабильная поддержка эффекта достижения конца прокрутки в Android 12
  • Улучшения в определении размера области прикосновения
  • Обратите внимание, что в Compose 1.0 компоненты Material будут расширять пространство макета в соответствии с рекомендациями по обеспечению доступности для размера интерактивных элементов. Например, область прикосновения кнопки будет расширена до минимального размера 48 x 48 dp, даже если вы зададите меньший размер кнопки. Это позволяет обеспечить согласованное поведение компонентов Material Design и Compose Material при их совместном использовании. Это изменение также гарантирует, что при создании интерфейса с помощью компонентов Compose Material будут соблюдены минимальные требования к доступности областей прикосновения.
  • Стабильная поддержка боковой панели навигации
  • Несколько экспериментальных API переведены в стабильную версию.
  • Поддержка более новых версий Kotlin

Версия 1.1.0-rc03

26 января 2022 г.

androidx.compose.animation:animation:1.1.0-rc03, androidx.compose.animation:animation-core:1.1.0-rc03 и androidx.compose.animation:animation-graphics:1.1.0-rc03. Версия 1.1.0-rc03 содержит следующие коммиты:

Исправление ошибок

  • Обновлена поддержка Compose Material 1.1.0-rc03

Версия 1.1.0-rc01

15 декабря 2021 г.

Выпущены androidx.compose.animation:animation:1.1.0-rc01 и androidx.compose.animation:animation-core:1.1.0-rc01. Версия 1.1.0-rc01 содержит следующие коммиты:

Изменения в API

  • Используйте AnimatedImageVector.animatedVectorResource вместо animatedVectorResource, чтобы загрузить файл ресурса <animated-vector>.
    • Используйте rememberAnimatedVectorResource вместо AnimatedImageVector#painterFor, чтобы отобразить AnimatedImageVector. (I9c300)

Версия 1.1.0-beta04

1 декабря 2021 г.

androidx.compose.animation:animation:1.1.0-beta04, androidx.compose.animation:animation-core:1.1.0-beta04 и androidx.compose.animation:animation-graphics:1.1.0-beta04. Версия 1.1.0-beta04 содержит следующие коммиты:

Новые функции

  • Обновлено для совместимости с Kotlin 1.6.0

Версия 1.1.0-beta03

17 ноября 2021 г.

androidx.compose.animation:animation:1.1.0-beta03, androidx.compose.animation:animation-core:1.1.0-beta03 и androidx.compose.animation:animation-graphics:1.1.0-beta03. Версия 1.1.0-beta03 содержит следующие коммиты:

Изменения в API

  • Добавлен новый модификатор Modifier.onPlaced, позволяющий отслеживать изменения размещения. Таким образом, на основе наблюдаемых изменений размещения можно вносить дополнительные изменения в смещение дочернего модификатора. (I558fd)
  • Добавлена поддержка contentKey в Crossfade. ContentKey будет использоваться системой анимации для проверки равенства. Поэтому для сравнения состояний можно указать подходящий ключ contentKey.

    ContentKey также будет использоваться в качестве ключа для сохранения и восстановления контента. (I2e055, b/197907070)

Версия 1.1.0-beta02

3 ноября 2021 г.

androidx.compose.animation:animation:1.1.0-beta02, androidx.compose.animation:animation-core:1.1.0-beta02 и androidx.compose.animation:animation-graphics:1.1.0-beta02. Версия 1.1.0-beta02 содержит следующие коммиты.

Исправление ошибок

  • Новые API анимации для поддержки инструментов. В частности, они позволяют инструментам проверять анимацию и ее конфигурацию в Transitions. (I4116e)

Версия 1.1.0-beta01

27 октября 2021 г.

androidx.compose.animation:animation:1.1.0-beta01, androidx.compose.animation:animation-core:1.1.0-beta01 и androidx.compose.animation:animation-graphics:1.1.0-beta01. Версия 1.1.0-beta01 содержит следующие коммиты:

Изменения в API

  • Новые API анимации для поддержки инструментов. В частности, они позволяют инструментам проверять анимацию и ее конфигурацию в Transitions. (I4116e)

Версия 1.1.0-alpha06

13 октября 2021 г.

androidx.compose.animation:animation:1.1.0-alpha06, androidx.compose.animation:animation-core:1.1.0-alpha06 и androidx.compose.animation:animation-graphics:1.1.0-alpha06. Версия 1.1.0-alpha06 содержит следующие коммиты:

Версия 1.1.0-alpha05

29 сентября 2021 г.

androidx.compose.animation:animation:1.1.0-alpha05, androidx.compose.animation:animation-core:1.1.0-alpha05 и androidx.compose.animation:animation-graphics:1.1.0-alpha05. Версия 1.1.0-alpha05 содержит следующие коммиты:

Изменения в API

  • EnterTransition, ExitTransition и некоторые API AnimatedVisibility стали стабильными. MutableTransitionState.isIdle больше не является экспериментальной функцией. (I5072d)

  • Критическое изменение. Лямбда-выражения в фабриках Enter/ExitTransition перемещены на последнюю позицию в списке параметров. (I5072d)

Версия 1.1.0-alpha04

15 сентября 2021 г.

androidx.compose.animation:animation:1.1.0-alpha04, androidx.compose.animation:animation-core:1.1.0-alpha04 и androidx.compose.animation:animation-graphics:1.1.0-alpha04. Версия 1.1.0-alpha04 содержит следующие коммиты:

Версия 1.1.0-alpha03

1 сентября 2021 г.

androidx.compose.animation:animation:1.1.0-alpha03, androidx.compose.animation:animation-core:1.1.0-alpha03 и androidx.compose.animation:animation-graphics:1.1.0-alpha03. Версия 1.1.0-alpha03 содержит следующие коммиты.

Новые функции

  • Обновлена зависимость Compose 1.1.0-alpha03 от Kotlin 1.5.30. (I74545)

Версия 1.1.0-alpha02

18 августа 2021 г.

androidx.compose.animation:animation:1.1.0-alpha02, androidx.compose.animation:animation-core:1.1.0-alpha02 и androidx.compose.animation:animation-graphics:1.1.0-alpha02. Версия 1.1.0-alpha02 содержит следующие коммиты:

Изменения в API

  • Теперь параметр StartOffset поддерживается в повторяющихся и бесконечно повторяющихся анимациях. С его помощью можно отложить начало анимации или ускорить ее до начала. Начальное смещение не будет повторяться (Ic679f, b/195079908)
  • Новый переход "Вход/выход" для масштабирования. Его можно использовать в сочетании с другими типами переходов. (I372da, b/191325593)

Версия 1.1.0-alpha01

4 августа 2021 г.

androidx.compose.animation:animation:1.1.0-alpha01, androidx.compose.animation:animation-core:1.1.0-alpha01 и androidx.compose.animation:animation-graphics:1.1.0-alpha01. Версия 1.1.0-alpha01 содержит следующие коммиты:

Изменения в API

  • AnimatedImageVector и связанные с ним API теперь находятся в новом модуле androidx.compose.animation:animation-graphics. (I60873)

Исправление ошибок

Версия 1.0

Версия 1.0.5

3 ноября 2021 г.

Выпущены androidx.compose.animation:animation:1.0.5 и androidx.compose.animation:animation-core:1.0.5. Версия 1.0.5 содержит следующие коммиты:

Исправление ошибок

  • Исправлена ошибка отслеживания сбоев, связанных с экземплярами derivedStateOf. (aosp/1792247)

Версия 1.0.4

13 октября 2021 г.

Выпущены androidx.compose.animation:animation:1.0.4 и androidx.compose.animation:animation-core:1.0.4. Версия 1.0.4 содержит следующие коммиты:

Обновления зависимостей

  • Обновлена зависимость от Kotlin 1.5.31

Версия 1.0.3

29 сентября 2021 г.

Выпущены androidx.compose.animation:animation:1.0.3 и androidx.compose.animation:animation-core:1.0.3. Версия 1.0.3 содержит следующие коммиты:

Обновления зависимостей

  • Обновлена зависимость от Kotlin 1.5.30

Версия 1.0.2

1 сентября 2021 г.

Выпущены androidx.compose.animation:animation:1.0.2 и androidx.compose.animation:animation-core:1.0.2. Версия 1.0.2 содержит следующие коммиты:

Добавлена поддержка версии Compose 1.0.2. Compose 1.0.2 по-прежнему совместим с Kotlin 1.5.21.

Версия 1.0.1

4 августа 2021 г.

Выпущены androidx.compose.animation:animation:1.0.1 и androidx.compose.animation:animation-core:1.0.1. Версия 1.0.1 содержит следующие коммиты:

Обновления зависимостей

  • Обновлена зависимость от Kotlin 1.5.21.

Версия 1.0.0

28 июля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0 и androidx.compose.animation:animation-core:1.0.0. Версия 1.0.0 содержит следующие коммиты:

Основные функции версии 1.0.0

Это первый стабильный выпуск Compose. Подробную информацию можно найти в официальном блоге Compose Release.

Известные проблемы

  • Если вы используете Android Studio Bumblebee Canary 4 или AGP 7.1.0-alpha04/7.1.0-alpha05, может произойти сбой:

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

    Чтобы устранить проблему, временно увеличьте значение minSdkVersion до 24 или выше в файле build.gradle. Эта проблема будет устранена в следующей версии Android Studio Bumblebee и AGP 7.1. (b/194289155)

Версия 1.0.0-rc02

14 июля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-rc02 и androidx.compose.animation:animation-core:1.0.0-rc02. Версия 1.0.0-rc02 содержит следующие коммиты:

Версия 1.0.0-rc01

1 июля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-rc01 и androidx.compose.animation:animation-core:1.0.0-rc01. Версия 1.0.0-rc01 содержит следующие коммиты:

Исправление ошибок

  • Перемещено InfiniteAnimationPolicy в androidx.compose.ui:ui (I5eb09, b/160602714)

Версия 1.0.0-beta09

16 июня 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta09 и androidx.compose.animation:animation-core:1.0.0-beta09. Версия 1.0.0-beta09 содержит следующие коммиты:

Изменения в API

  • Новая функция AnimatedContent Composable. Он управляет изменением контента с помощью настраиваемого параметра ContentTransform, когда новый целевой контент добавляется, а исходный удаляется. Разные сочетания переходов при входе и выходе позволяют создавать уникальные эффекты. В процессе преобразования контента AnimatedContent автоматически анимирует свой размер, чтобы он соответствовал входящему контенту. (I2c3df)
  • Контакт (ManualFrameClock) удален. Если вам нужно управлять анимацией, используйте composeTestRule.mainClock. (I3c3e8, b/189951065)

Добавлены правила для профилей

В этом выпуске в следующие модули Compose добавлены правила профиля (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.text
  • androidx.compose.ui.text
  • androidx.compose.ui.unit
  • androidx.compose.ui.util

Что такое правила профиля

  • Правила профиля для библиотеки указываются в текстовом файле baseline-prof.txt, расположенном в каталоге src/main или аналогичном. В файле каждое правило указывается в отдельной строке. Правило представляет собой шаблон для сопоставления с методами или классами в библиотеке. Синтаксис этих правил представляет собой надмножество понятного для человека формата профиля ART, который используется при работе с adb shell profman --dump-classes-and-methods .... Эти правила могут быть двух типов: для методов и для классов.

  • Правило для метода будет иметь следующий формат:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • Правило для класса будет иметь следующий формат:

    <CLASS_DESCRIPTOR>
    
  • Здесь <FLAGS> – один или несколько символов H, S и P, указывающих, следует ли отмечать этот метод как "Горячий", "Запуск" или "После запуска".

  • <CLASS_DESCRIPTOR> – дескриптор класса, к которому относится целевой метод. Например, для класса androidx.compose.runtime.SlotTable дескриптор будет Landroidx/compose/runtime/SlotTable;.

  • <METHOD_SIGNATURE> – это сигнатура метода, которая включает название, типы параметров и типы возвращаемых значений метода. Например, метод fun isPlaced(): Boolean в LayoutNode имеет сигнатуру isPlaced()Z.

  • В этих шаблонах можно использовать подстановочные знаки (**, * и ?), чтобы одно правило охватывало несколько методов или классов.

Что делают правила

  • Метод, отмеченный флагом H, является "горячим" и должен быть скомпилирован заранее.

  • Метод с флагом S указывает на то, что он вызывается при запуске и должен быть скомпилирован заранее, чтобы избежать затрат на компиляцию и интерпретацию метода во время запуска.

  • Метод с флагом P вызывается после запуска.

  • Класс, указанный в этом файле, используется при запуске и должен быть предварительно выделен в куче, чтобы избежать затрат на загрузку класса.

Как это работает?

  • Библиотеки могут определять эти правила, которые будут упакованы в артефакты AAR. Когда приложение, включающее эти артефакты, будет создано, правила будут объединены и использованы для создания компактного двоичного профиля ART, относящегося к приложению. Затем ART может использовать этот профиль при установке приложения на устройства, чтобы заранее скомпилировать определенное подмножество приложения и повысить его производительность, особенно при первом запуске. Обратите внимание, что это не повлияет на приложения с возможностью отладки.

Версия 1.0.0-beta08

2 июня 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta08 и androidx.compose.animation:animation-core:1.0.0-beta08. Версия 1.0.0-beta08 содержит следующие коммиты:

Исправление ошибок

  • Теперь detectDragGesures, detectVerticalGestures и detectHorizontalGestures будут автоматически учитывать изменение позиции, поэтому вам не нужно вызывать change.consumePositionChange в обратных вызовах onDrag (I42fc4, b/185096350, b/187320697).
  • Modifier.onGloballyPositioned() теперь сообщает координаты этого модификатора в цепочке модификаторов, а не координаты макета после применения всех модификаторов. Это означает, что порядок модификаторов влияет на то, какие координаты будут передаваться. (Ieb67d, b/177926591)

Версия 1.0.0-beta07

18 мая 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta07 и androidx.compose.animation:animation-core:1.0.0-beta07. Версия 1.0.0-beta07 содержит следующие коммиты.

Изменения в API

  • Новый API AnimatedVisibility, в котором видимость можно задать в MutableTransitionState. Это также позволяет отслеживать состояния анимации за пределами AnimatedVisibility с помощью currentState и isIdle.
    • Новая поддержка перехода дочерних элементов в Transition
    • Поддержка пользовательской анимации перехода при появлении и исчезновении в AnimatedVisibility с помощью AnimationScope.transition
    • Новый модификатор animateEnterExit доступен для всех дочерних элементов AnimatedVisibility
    • Прекращена поддержка API AnimatedVisibility, которые принимают параметр initiallyVisible (I702f3).

Версия 1.0.0-beta06

5 мая 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta06 и androidx.compose.animation:animation-core:1.0.0-beta06. Версия 1.0.0-beta06 содержит следующие коммиты.

Версия 1.0.0-beta05

21 апреля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta05 и androidx.compose.animation:animation-core:1.0.0-beta05. Версия 1.0.0-beta05 содержит следующие коммиты:

Исправление ошибок

  • Файлы AndroidManifest из ui-test-manifest и ui-tooling-data теперь совместимы с Android 12 (I6f9de, b/184718994).

Версия 1.0.0-beta04

7 апреля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta04 и androidx.compose.animation:animation-core:1.0.0-beta04. Версия 1.0.0-beta04 содержит следующие коммиты.

Изменения в API

  • Удалены общедоступные экземпляры RowScope, ColumnScope, BoxScope, BoxWithConstraintsScope. (I4e83e, b/181869067)

Версия 1.0.0-beta03

24 марта 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta03 и androidx.compose.animation:animation-core:1.0.0-beta03. Версия 1.0.0-beta03 содержит следующие коммиты:

Версия 1.0.0-beta02

10 марта 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta02 и androidx.compose.animation:animation-core:1.0.0-beta02. Версия 1.0.0-beta02 содержит следующие коммиты:

Исправление ошибок

  • Внедрение ограничений на общедоступное использование экспериментальных API (I6aa29, b/174531520)

Версия 1.0.0-beta01

24 февраля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-beta01 и androidx.compose.animation:animation-core:1.0.0-beta01. Версия 1.0.0-beta01 содержит следующие коммиты:

Это первый выпуск Compose 1.0.0 Beta.

Изменения в API

  • InteractionState заменен на [Mutable]InteractionSource
    • Интерфейсы отвечают за отправку и сбор событий взаимодействия.
    • Вместо того чтобы передавать interactionState = remember { InteractionState() } компонентам, таким как Button и Modifier.clickable(), используйте interactionSource = remember { MutableInteractionSource() }.
    • Вместо Interaction.Pressed in interactionState используйте функции расширения для InteractionSource, например InteractionSource.collectIsPressedAsState().
    • В сложных случаях можно использовать InteractionSource.interactions, чтобы отслеживать поток взаимодействий. Дополнительную информацию можно найти в документации по InteractionSource и примерах.
    • (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
  • Пакеты методов smoothScrollBy и scrollBy изменены на androidx.compose.foundation.gestures.* (I3f7c1, b/175294473).
  • Изменены названия модификаторов размера. Параметры Modifier.width/height/size были переименованы в requiredWidth/requiredHeight/requiredSize. Modifier.preferredWidth/preferredHeight/preferredSize были переименованы в width/height/size. (I5b414)
  • Ориентация перенесена в основной пакет. Класс VelocirtTracker перенесен из ui.gesture в ui.input.pointer. (Iff4a8, b/175294473)
  • Удалены AnimationClockObservable и его подклассы. Класс AnimatedFloat удален. (Icde52, b/177457083)
  • Теперь в качестве параметра modifier.draggable можно использовать DraggableState вместо простой лямбда-функции. Чтобы получить прежнее поведение, создайте состояние с помощью rememberDraggableState { delta -> } (Ica70f, b/175294473).
  • Удалены API animate, animatedValue и AnimatedValue (If27bc, b/177457083).
  • Удален параметр AnimationEndReason.Interrupted. Если анимация будет прервана, будет сгенерировано исключение CancellationException. (I2cbbc, b/179695417)
  • API TargetAnimation удален. (If47d1, b/177457083)

Версия 1.0.0-alpha12

10 февраля 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha12 и androidx.compose.animation:animation-core:1.0.0-alpha12. Версия 1.0.0-alpha12 содержит следующие коммиты:

Изменения в API

  • Modifier.pointerInput теперь требует запоминания ключей, чтобы указывать, когда сопрограмма обнаружения ввода указателя должна перезапускаться для новых зависимостей. (I849cd)
  • Параметр "Границы" переименован в DpRect (I4b32a)
  • Унифицировано название параметра для AnimationSpec в animationSpec во всей системе анимации. Также ограничьте Enter/ExitTransition, чтобы принимать FiniteAnimationSpec. (Ie47c5, b/177457083)
  • Функции Animatable.snapTo и Animatable.stop теперь являются функциями приостановки (If4288)
  • Как и в случае с удалением composable-функции state { 0 } и продвижением функции remember { mutableStateOf(0) }, мы удалим composable-функцию savedInstanceState { 0 }. Вместо этого используйте rememberSaveable { mutableStateOf(0) }. Если тип, используемый в MutableState, можно сохранить в Bundle, то состояние будет сохраняться и восстанавливаться автоматически. Если раньше вы передавали специальный объект сохранения, теперь вам нужно использовать новую перегрузку функции rememberSaveable с параметром stateSaver. Пример использования: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26, b/177338004)
  • Обновлена сигнатура метода Crossfade, чтобы она была более согласованной с остальной частью системы анимации. (Ib05ed, b/177457083)
  • Функция rememberSavedInstanceState() переименована в rememberSaveable() и перенесена в пакет androidx.compose.runtime.saveable. (I1366e, b/177338004)
  • Класс RestorableStateHolder был переименован в SaveableStateHolder и перемещен в пакет androidx.compose.runtime.saveable. Внутренний метод RestorableStateProvider был переименован в SaveableStateProvider. Удален общий тип, поэтому в качестве ключа можно передавать Any. Экспериментальная аннотация больше не нужна. (I0902e, b/174598702)
  • Обновлен API Modifier.animateContentSize, чтобы он соответствовал остальной части системы анимации. (I0bf75, b/177457083)
  • Поддержка AnimatedValue/Float прекращена. Используйте вместо него Animatable. (I71345, b/177457083)
  • tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter и pressIndicaitonGestureFilter больше не поддерживаются. Вместо этого используйте Modifier.clickable или Modifier.pointerInput с функцией detectTapGestures. (I6baf9, b/175294473)
  • Добавлен элемент контекста сопрограммы InfiniteAnimationPolicy, который будет применяться в бесконечных анимациях. По умолчанию правила не устанавливаются, за исключением случаев, когда тестирование проводится с помощью ComposeTestRule. (I50ec4, b/151940543)
  • Из нескольких классов, где они редко использовались, удалены методы деструктуризации и copy(). (I26702, b/178659281)
  • Время воспроизведения в анимации теперь указывается в наносекундах (If776a)
  • Объект compose:runtime-dispatch больше не поддерживается. MonotonicFrameClock теперь находится в compose:runtime, а AndroidUiDispatcher – в compose:ui. (Ib5c36)
  • Добавлены методы Animation.isInfinite и VectorizedAnimationSpec.isInfinite, которые указывают, является ли анимация бесконечной. Это можно использовать при реализации анимаций, чтобы обеспечить их специальную обработку. Например, можно показывать специальное сообщение "осталось времени" или отменять анимацию во время тестирования, чтобы не ждать бездействия бесконечно. (Iebb05, b/151940543)
  • Использовать Long вместо Uptime в качестве типа времени анимации (Ie3aa7, b/177420019)

Версия 1.0.0-alpha11

28 января 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha11 и androidx.compose.animation:animation-core:1.0.0-alpha11. Версия 1.0.0-alpha11 содержит следующие коммиты:

Изменения в API

  • Переход на основе TransitionDefinition устарел (I0ac57)
  • Добавлено поле для ярлыка, чтобы в инструментах отображались переходы и дочерние анимации (I619fb).
  • animateAsState теперь называется animateFooAsState, где Foo – тип анимируемой переменной, например Float, Dp, Offset и т. д. (Ie7e25).
  • Новый объект InfiniteTransition, который может запускать любое количество дочерних анимаций. (I1da81)
  • Изменения интерфейсов параметров с сохранением состояния Material, чтобы функции @Composable возвращали State<T>. Добавлен метод Animatable.asState(), который позволяет легко преобразовать Animatable в State. Также изменяет animateElevation, чтобы сделать его расширением suspend для Animatable. (If613c)

Исправление ошибок

  • onCommit, onDispose и onActive устарели. Вместо них теперь используются API SideEffect и DisposableEffect (If760e).
  • Теперь поддерживается начальное состояние в updateTransition (Ifd51d).
  • В изображения и значки добавлен параметр описания контента. Используется для предоставления описания сервисам специальных возможностей (I2ac4c).
  • invalidate и compositionReference() теперь считаются устаревшими. Вместо них следует использовать currentRecomposeScope и rememberCompositionReference. (I583a8)
  • Поля "Продолжительность" и "Время работы" будут заменены на поле "Длинные миллисекунды". Это позволит убрать зависимость ввода указателя от этих классов. (Ia33b2, b/175142755, b/177420019)
  • Теперь элементы, которые можно нажимать, переключать и выбирать, можно создавать вне композиции (I0a130, b/172938345, b/175294473).
  • Динамика анимации заменена на функциональный интерфейс (Ib14e5).
  • Новый фабричный метод items(count: Int) для области действия LazyColumn/LazyRow/LazyVerticalGrid. items(items: List) и itemsIndexed(items: List) теперь являются функциями расширения, поэтому их нужно импортировать вручную. Новые перегрузки расширений для массивов: items(items: Array) и itemsIndexed(Array) (I803fc, b/175562574)
  • Использование TestCoroutineDispatcher при тестировании (I532b6)
  • Удален класс PointerInputData. Класс PointerInputChange был изменен, чтобы включать все поля класса PointerInputData. Классы PointerInputEvent и PointerInputEventData стали внутренними, поскольку они не используются ни в одном общедоступном API. (Ifff97, b/175142755)

Версия 1.0.0-alpha10

13 января 2021 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha10 и androidx.compose.animation:animation-core:1.0.0-alpha10. Версия 1.0.0-alpha10 содержит следующие коммиты:

Изменения в API

  • Измененная скорость, состоящая из компонентов и математических операций. (Ib0447)
  • Переименовано с @ExperimentalTesting на @ExperimentalTestApi, чтобы соответствовать аналогичным экспериментальным аннотациям API (Ia4502, b/171464963).
  • Переименован параметр Position в DpOffset и удалена функция getDistance() (Ib2dfd).
  • Удален общедоступный API Any.identityHashCode() (I025d7).

Исправление ошибок

  • Новый API на основе сопрограмм Animatable, который обеспечивает взаимную исключительность анимаций. Новый класс DecayAnimationSpec для поддержки многомерной анимации затухания (I820f2, b/168014930)
  • Функция animate() заменена на animateAsState(), которая возвращает State<T> вместо T. Это позволяет повысить эффективность, поскольку область аннулирования можно сузить до места, где считывается значение State. (Ib179e)

Версия 1.0.0-alpha09

16 декабря 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha09 и androidx.compose.animation:animation-core:1.0.0-alpha09. Версия 1.0.0-alpha09 содержит следующие коммиты:

Изменения в API

  • Перенесены Dp.VectorConverter, Position.VectorConverter и т. д. в animation-core. Устаревшие VectorConveters (If0c4b) больше не поддерживаются.
  • Представлен новый набор API для переходов с улучшенным удобством использования, поддержкой динамически добавляемых анимаций и динамически рассчитываемых целей анимации. Эти API помечены как экспериментальные, чтобы их было легко отличить от API на основе TransitionDefinition. (Ia7fe3)

Исправление ошибок

  • Лямбда-выражения в модификаторах смещения теперь возвращают IntOffset, а не Float. (Ic9ee5, b/174137212, b/174146755)
  • Удалены LazyColumnFor, LazyRowFor, LazyColumnForIndexed и LazyRowForIndexed. Используйте LazyColumn и LazyRow вместо Column и Row (I5b48c)
  • Для API, приостанавливающих ввод с помощью указателя, переименованы HandlePointerInputScope в AwaitPointerEventScope и handlePointerInput() в awaitPointerEventScope(). (Idf0a1, b/175142755)
  • Новая функция infiniteRepeatable для создания объекта InfiniteRepeatableSpec (I668e5)
  • Удалена аннотация ExperimentalPointerInput (Ia7a24).

Версия 1.0.0-alpha08

2 декабря 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha08 и androidx.compose.animation:animation-core:1.0.0-alpha08. Версия 1.0.0-alpha08 содержит следующие коммиты:

Изменения в API

  • Добавлена проверка lint для названий и позиций параметров лямбда-функций, чтобы обеспечить соответствие рекомендациям Compose. Также некоторые API, в которых в качестве названия для лямбда-функции использовался символ children, были перенесены на content в соответствии с проверкой и рекомендациями. (Iec48e)
  • Удалены ранее признанные устаревшими API:
    • Modifier.onPositioned удален, используйте Modifier.onGloballyPositioned.
    • Modifier.onDraw удален, используйте Modifier.onDrawBehind.
    • Modifier.plus удален, используйте Modifier.then.
    • Color.Unset удален, используйте Color.Unspecified.
    • Класс PxBounds был удален. Вместо него используйте класс Rect.
    • (Ie9d02, b/172562222)
  • Временно добавлена возможность использовать MonotonicFrameClock для управления TestAnimationClock (I1403b, b/173402197)

Исправление ошибок

  • Переименовано Modifier.drawLayer в Modifier.graphicsLayer. Также обновлены связанные классы до GraphicsLayer в соответствии с отзывами совета по API. (I0bd29, b/173834241)
  • Добавлены API Modifier.scale/rotate для удобства работы с drawLayer.
    • Переименован параметр Modifier.drawOpacity в Modifier.alpha
    • Переименован метод Modifier.drawShadow в Modifier.shadow (I264ca, b/173208140)
  • Поля uptime и position в PointerInputData теперь не могут быть пустыми. (Id468a)
  • Модификаторы offsetPx были переименованы в offset. Теперь они принимают параметры лямбда-функции вместо состояния. (Ic3021, b/173594846)
  • Новые API для запуска анимации в сопрограммах (Ied662)
  • Устаревшие функции Ambient с суффиксом Ambient были заменены новыми свойствами с префиксом Ambient, соответствующими другим функциям Ambient и рекомендациям по использованию API Compose. (I33440)
  • Управление временем в тестах (TestAnimationClock и его использование) теперь является экспериментальной функцией (I6ef86, b/171378521).
  • Удаление старого модуля ui-test и его заглушек (I3a7cb)
  • Функция RestorableStateHolder.withRestorableState переименована в RestorableStateProvider (I66640).
  • Интерфейс выравнивания был обновлен и стал более функциональным. (I46a07, b/172311734)

Версия 1.0.0-alpha07

11 ноября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha07 и androidx.compose.animation:animation-core:1.0.0-alpha07. Версия 1.0.0-alpha07 содержит следующие коммиты:

Исправление ошибок

  • Функции AmbientTextStyle, ProvideTextStyle и AmbientContentColor больше не поддерживаются. Вместо этого используйте новые версии, доступные в библиотеке материалов. Для приложений, не использующих Material Design, вам следует создать собственную систему дизайна с темами, которые можно использовать в ваших компонентах. (I74acc, b/172067770)
  • foundation.Text устарел и заменен на material.Text. Если вам нужен простой текстовый API, который не использует значения из темы, ознакомьтесь с информацией о функции androidx.compose.foundation.BasicText. (If64cb)
  • Класс MeasureResult был перемещен из MeasureScope. (Ibf96d, b/171184002)
  • Некоторые символы, связанные с макетом, были перенесены из androidx.compose.ui в androidx.compose.layout.ui. (I0fa98, b/170475424)

Версия 1.0.0-alpha06

28 октября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha06 и androidx.compose.animation:animation-core:1.0.0-alpha06. Версия 1.0.0-alpha06 содержит следующие коммиты.

Изменения в API

  • Включите переходы в ComposeTestRule; удалите параметр, позволяющий включить мигающий курсор из ComposeTestRule. (If0de3)

Версия 1.0.0-alpha05

14 октября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha05 и androidx.compose.animation:animation-core:1.0.0-alpha05. Версия 1.0.0-alpha05 содержит следующие коммиты:

Изменения в API

  • Новый интерфейс Animation и подклассы. Эти классы хранят начальные и конечные условия для анимации, поэтому позволяют запрашивать значение и скорость только по времени воспроизведения (Ie95bd, b/163329867).

Исправление ошибок

  • OnPositionedModifier переименован в OnGloballyPositionedModifier, а onPositioned() – в onGloballyPositioned(). (I587e8, b/169083903)
  • Устаревшие API contentColor() и currentTextStyle() заменены на AmbientContentColor и AmbientTextStyle соответственно. Чтобы получить текущее значение, используйте .current для свойства ambient так же, как и для любого другого свойства ambient. Это изменение было сделано для единообразия и чтобы избежать дублирования функций. Кроме того, некоторые свойства окружения были переименованы, чтобы лучше отражать их назначение:

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme (I37b6d)

Версия 1.0.0-alpha04

1 октября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha04 и androidx.compose.animation:animation-core:1.0.0-alpha04. Версия 1.0.0-alpha04 содержит следующие коммиты:

Изменения в API

  • Аннотируйте rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled и textInputServiceFactory с помощью @VisibleForTesting, сделайте их внутренними API и скройте их kdoc (I554eb, b/168308412).

Исправление ошибок

  • Обновлены многие графические API.
    • Обновлены API преобразования масштаба и поворота, чтобы использовать один параметр Offset для представления опорной координаты вместо отдельных параметров float для координат x/y в DrawScope и DrawTransform.
    • Удалены методы Rect.expandToInclude и Rect.join
    • В документацию по радиусу добавлено слово "овальный" в дополнение к слову "эллиптический"
    • Добавлена документация, в которой указано, что публичный конструктор для встроенного класса Radius нельзя вызывать напрямую. Вместо этого объекты Radius следует создавать с помощью конструкторов функций.
    • Удалены API RoundRect для запросов topRight, bottomRight, bottomCenter и т. д.
    • Устаревший метод Rect.shift заменен на Rect.translate
    • Удалены API RoundRect.grow и Rect.shrink
    • Переименовано RoundRect.outerRect в Rect.boundingRect
    • Удалены методы RoundRect.middleRect/tallMiddleRect/wideMiddleRect и Rect.isStadium
    • Переименован параметр RoundRect.longestSide в RoundRect.maxDimension
    • Переименован параметр RoundRect.shortestSide в RoundRect.minDimension
    • Изменено значение RoundRect.center: теперь это свойство, а не функция
    • Обновлен конструктор RoundRect, чтобы использовать свойства Radius вместо отдельных параметров для значений радиуса по осям X и Y.
    • Удалены API размера, которые предполагали, что это прямоугольник с началом координат в точке 0,0.
    • В Radius добавлен API для удаления объектов
    • Некоторые функции расширения RoundRect были преобразованы в свойства.
    • (I8f5c7, b/168762961)
  • Поддержка foundation.Box прекращена. Используйте вместо него foundation.layout.Box. (Ie5950, b/167680279)
  • Приложение Stack переименовано в Box. Предыдущий компонент Box будет удален, а вместо него будет использоваться новый компонент Box из compose.foundation.layout. Новый контейнер Box располагает дочерние элементы друг над другом, а не в столбец, как предыдущий. (I94893, b/167680279)
  • Параметры оформления блоков больше не поддерживаются. Если вы хотите добавить к блоку декоративные элементы или отступы, используйте модификаторы (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279).
  • Мы запретили статический импорт содержимого областей макета (например, alignWithSiblings в RowScope). Вместо него следует использовать явную область действия: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be, b/166760797)

Версия 1.0.0-alpha03

16 сентября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha03 и androidx.compose.animation:animation-core:1.0.0-alpha03. Версия 1.0.0-alpha03 содержит следующие коммиты.

Исправление ошибок

  • Во всех API макетов слово "gravity" было заменено на "align" или "alignment". (I2421a, b/164077038)

Версия 1.0.0-alpha02

2 сентября 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha02 и androidx.compose.animation:animation-core:1.0.0-alpha02. Версия 1.0.0-alpha02 содержит следующие коммиты:

Изменения в API

  • Добавлен параметр ManualFrameClock.hasAwaiters, чтобы проверить, ожидает ли что-нибудь кадр от этих часов; параметр runWithManualClock в качестве замены runBlocking при выполнении тестов, которым требуется ManualFrameClock; параметр TestUiDispatcher.Main, который обеспечивает простой доступ к основному диспетчеру интерфейса в ваших тестах.

    Пример:

    @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)

Исправление ошибок

  • onPreCommit больше не поддерживается. Теперь поведение onPreCommit реализовано в onCommit.

    Теперь функции onCommit и onActive выполняются в том же кадре хореографа, в котором были применены изменения композиции, а не в начале следующего кадра хореографа. (I70403)

Версия 1.0.0-alpha01

26 августа 2020 г.

Выпущены androidx.compose.animation:animation:1.0.0-alpha01 и androidx.compose.animation:animation-core:1.0.0-alpha01. Версия 1.0.0-alpha01 содержит следующие коммиты:

Версия 0.1.0-dev

Версия 0.1.0-dev17

19 августа 2020 г.

Выпущены androidx.compose.animation:animation:0.1.0-dev17 и androidx.compose.animation:animation-core:0.1.0-dev17. Версия 0.1.0-dev17 содержит следующие коммиты:

Новые функции

Изменения в API

  • Смещение стало встроенным классом (Iaec70).
  • IntOffset теперь встроенный класс (Iac0bf)
  • IntSize теперь встроенный класс (I2bf42)
  • Компонуемый элемент AnimatedVisibilty анимирует появление и исчезновение дочернего контента.

    Компоненты EnterTransition и ExitTransition работают с composable-функцией AnimatedVisibilty и позволяют использовать три типа анимации появления и исчезновения: затухание, скольжение и увеличение/уменьшение контента. Разные типы анимации можно комбинировать, чтобы получить более индивидуальный вид. (Idda11)

  • Устаревший параметр PxBounds заменен на Rect. Обновлены все случаи использования PxBounds с rect и добавлены аннотации deprecate/replace with для упрощения перехода. (I37038, b/162627058)

Исправление ошибок

  • PlacementScope.placeAbsolute() переименован в PlacementScope.place(), а предыдущий PlacementScope.place() переименован в PlacementScope.placeRelative(). В результате метод PlacementScope.place() больше не будет автоматически зеркально отражать позицию в контекстах с письмом справа налево. Если вам нужно именно это, используйте правило PlacementScope.placeRelative(). (I873ac, b/162916675)
  • Компонуемый элемент state { ... } теперь считается устаревшим. Вместо него рекомендуется использовать явные вызовы remember { mutableStateOf(...) }. Это уменьшает общую поверхность API и количество концепций для управления состоянием, а также соответствует шаблону by mutableStateOf() для делегирования свойств класса. (Ia5727)

Версия 0.1.0-dev16

5 августа 2020 г.

Выпущены androidx.compose.animation:animation:0.1.0-dev16 и androidx.compose.animation:animation-core:0.1.0-dev16. Версия 0.1.0-dev16 содержит следующие коммиты:

Изменения в API

  • Встроенные конвертеры векторов для преобразования встроенных единиц теперь доступны через Foo.VectorConverter. например Dp.VectorConverter, Color.VectorConverter, Float.VectorConverter и т.д. (I3e273)
  • Добавьте в Modifier.animateContentSize() слушателя события окончания анимации изменения размера. Когда анимация завершится, слушатель получит уведомление, а также начальный и конечный размеры анимации. (I277b2)
  • Новый модификатор animateContentSize, который анимирует изменение размера макета дочернего модификатора (Ieffdc).
  • Добавлен MonotonicFrameAnimationClock, который позволяет использовать MonotonicFrameClock в качестве AnimationClockObservable, чтобы устранить разрыв между новыми часами на основе сопрограмм и API, которые по-прежнему используют старые часы на основе обратного вызова.

    Эквивалент ManualAnimationClock в MonotonicFrameClock теперь выглядит как ManualFrameClock. (I111c7, b/161247083)

Исправление ошибок

  • Обновлены API для поддержки языков с письмом справа налево. Добавлен параметр LayoutDirectionAmbient, который можно использовать для чтения и изменения направления макета. Удалены модификаторы Modifier.rtl и Modifier.ltr. (I080b3)
  • Требуется явно указать тип T для transitionDefinition. (I1aded)
  • Пакет foundation.shape.corner был преобразован в foundation.share (I46491, b/161887429).
  • Метод Modifier.plus устарел. Используйте вместо него Modifier.then. Слово "затем" лучше указывает на порядок действий, а также запрещает использовать символ Modifier.padding().background() + anotherModifier, который нарушает последовательность и затрудняет чтение (Iedd58, b/161529964).
  • Функция Modifier.drawBackground переименована в Modifier.background (I13677).

Версия 0.1.0-dev15

22 июля 2020 г.

Выпущены androidx.compose.animation:animation:0.1.0-dev15 и androidx.compose.animation:animation-core:0.1.0-dev15. Версия 0.1.0-dev15 содержит следующие коммиты:

Обновление зависимостей

  • Чтобы использовать версию 0.1.0-dev15 библиотеки Compose, вам нужно обновить зависимости в соответствии с новыми фрагментами кода, приведенными выше в разделе Объявление зависимостей.

Изменения в API

  • API перехода был изменен, чтобы возвращать TransitionState вместо передачи TransitionState дочерним элементам. Это делает API более совместимым с API animate(). (I24e38)
  • Добавлен параметр модификатора для эффекта "Плавный переход" (I87cfe, b/159706180)
  • В API верхнего уровня вместо AnimationBuilder используйте AnimationSpec, чтобы подчеркнуть концепцию статической спецификации анимации.
    • Улучшен переход DSL за счет удаления требования к лямбда-функции для создания AnimationSpec, например tween или spring. Вместо этого они принимают параметры конструктора напрямую.
    • Улучшение удобства использования AnimationSpec за счет открытия конструкторов вместо использования построителей.
    • Измените продолжительность и задержку для ключевых кадров и промежуточных кадров на Int. Это позволит избежать ненужных преобразований типов и перегрузки методов (для поддержки как Long, так и Int). (Ica0b4)
  • Заменено использование IntPx на Int. Заменено IntPxPosition на IntOffset. Параметр IntPxSize заменен на IntSize. (Ib7b44)
  • Чтобы уменьшить количество классов, используемых для представления информации о размерах, стандартизируйте использование класса Size вместо PxSize. Это позволяет использовать преимущества встроенного класса, чтобы упаковать два значения с плавающей запятой, представляющие ширину и высоту, в одно значение типа long. (Ic0191)
  • Чтобы уменьшить количество классов, используемых для представления информации о позиционировании, стандартизируйте использование класса Offset вместо PxPosition. Это позволяет использовать преимущества встроенного класса, чтобы упаковать два значения float, представляющие смещения x и y, в одно значение long. (I3ad98)
  • В рамках масштабной реорганизации кода мы заменили использование класса Px в различных классах Compose, чтобы для параметров пикселей использовались только Dp и примитивные типы (I086f4).
  • Добавлена поддержка функции animate() для Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds и AnimationVector (Ib7518).
  • Теперь в функцию crossfade можно передавать необязательный параметр AnimationBuilder, чтобы настраивать анимацию (I6d6e0).
  • Заменили все случаи использования допускающего значение NULL типа Color в API на недопускающий значение NULL и вместо null используем Color.Unset (Iabaa7).
  • Удален класс ValueHolder. Изменена структура классов AnimatedValue и AnimatedFloat, чтобы поле значения анимации было абстрактным и подклассы могли отслеживать его обновление.
    • Добавлены классы моделей для AnimatedValue, AnimatedFloat и т. д.
    • Добавлен новый набор простых API @Composable для анимации между значениями. (I79530)
  • Критические изменения в API для фоновых функций. Подробную информацию можно найти в документации по журналам и Ambient<T> (I4c7ee, b/143769776).
  • Новый режим повтора: обратный. Этот режим отменяет предыдущую итерацию, поскольку анимация повторяется в RepeatableSpec или VectorizedRepeatableSpec. (Ibe0f5)
  • Дополнения API для ManualAnimationClock: hasObservers: Boolean и параметр конструктора dispatchOnSubscribe: Boolean (Iaa134)
  • Добавлены API для получения минимальных и максимальных границ в AnimatedFloat (Icd9cc).

Исправление ошибок

  • runOnIdleCompose переименован в runOnIdle (I83607)
  • Некоторые API для тестирования были переименованы, чтобы их названия были более понятными. Все API findXYZ переименованы в onNodeXYZ. Все API doXYZ были переименованы в performXYZ. (I7f164)
  • Добавлены API анимации без сохранения состояния. Эти API (I63bf7)
  • Компонуемый элемент Recompose больше не является полезной абстракцией. Большинство повторных композиций должно происходить в результате присвоений MutableState. В остальных случаях рекомендуется использовать функцию invalidate, чтобы запустить повторное создание текущей области. (Ifc992)
  • В рамках масштабной реорганизации кода мы заменили класс Px в различных классах Compose на Dp и примитивные типы для параметров пикселей. Удален весь класс Px (I3ff33).
  • В рамках масштабной реорганизации кода мы заменили использование класса Px в различных классах Compose, чтобы для параметров пикселей использовались только Dp и примитивные типы (Id3434).
  • Теперь при плавном переходе можно использовать нулевое значение (Iad6a4, b/155947711).
  • В рамках масштабной реорганизации кода мы заменили использование класса Px в различных классах Compose, чтобы для параметров пикселей использовались только Dp и примитивные типы (I19d02).
  • Объединили реализации CanvasScope, поэтому теперь есть только DrawScope и ContentDrawScope. Переименовали CanvasScope в DrawScope. Обновлен DrawScope, чтобы реализовать интерфейс Density и предоставить LayoutDirection. Удален подкласс DrawScope в ContentDrawScope. Обновлены Painter и PainterModifier, чтобы больше не поддерживать свойство RTL, поскольку DrawScope уже предоставляет его без необходимости указывать вручную (I1798e).
  • Обновлены API более высокого уровня, которые предоставляют Canvas, чтобы вместо этого предоставлять CanvasScope. Это позволяет потребителям не создавать собственные объекты Paint. Пользователи, которым по-прежнему нужен доступ к Canvas, могут использовать метод drawCanvas, который предоставляет функцию обратного вызова для отправки команд рисования с помощью базового Canvas. (I80afd)
  • В объекты Row и Column добавлены параметры verticalGravity и horizontalGravity соответственно. (I7dc5a)
  • Модуль ui-text переименован в ui-text-core (I57dec).
  • Улучшения DrawModifier API:
    • Область действия получателя для функции draw() изменена на ContentDrawScope
    • Удалены все параметры в функции draw()
    • У DrawScope такой же интерфейс, как и у CanvasScope.
    • У ContentDrawScope есть метод drawContent() (Ibaced, b/152919067)
  • runOnIdleCompose и runOnUiThread теперь глобальные функции, а не методы ComposeTestRule. (Icbe8f)
  • [Mutable]Операторы делегирования свойств State перенесены в расширения, чтобы поддерживать оптимизацию делегирования свойств Kotlin 1.4. Чтобы продолжить использовать by state { ... } или by mutableStateOf(...), вызывающие абоненты должны добавить импорты. (I5312c)
  • Поддержка ColoredRect прекращена. Вместо него используйте Box(Modifier.preferredSize(width, height).drawBackground(color)). (I499fa, b/152753731)
  • Замена оператора "Модификатор плюс" на функции расширения производителя (I225e4)
  • Компонуемый элемент Center больше не поддерживается. Его следует заменить на модификатор LayoutSize.Fill + LayoutAlign.Center или на один из компонентов Box или Stack с подходящими модификаторами (Idf5e0).
  • Переименован макет LayoutFlexible в LayoutWeight. Параметр "Плотный" переименован в "Заливка". (If4738)
  • Composable-функция Opacity заменена модификатором drawOpacity. (I5fb62)
  • В тестах, использующих AndroidComposeTestRule, теперь в корне композиции есть часы анимации, которые можно приостанавливать, возобновлять и перематывать вручную. (Id54c5)
  • Поддержка направления справа налево в модификаторе LayoutPadding (I9e8da)
  • Параметры "Плотность" и "Область плотности" объединены в один интерфейс. Вместо ambientDensity() теперь можно использовать DensityAmbient.current. Вместо withDensity(density) используйте with(density) (I11cb1).
  • Добавлены методы копирования для различных встроенных типов классов, в том числе:
    • Смещение
    • Размер
    • Радиус
    • Анимация
    • TransformOrigin
    • Устаревший метод объекта-компаньона Size.copy в пользу метода копирования экземпляра (Ife290, b/159905651)
  • Класс androidx.compose.ViewComposer перенесен в androidx.ui.node.UiComposer. Класс androidx.compose.Emittable удален. Он был избыточным по отношению к ComponentNode. androidx.compose.ViewAdapters был удален. Они больше не поддерживаются. Поддержка Compose.composeInto прекращена. Используйте setContent или setViewContent. Поддержка метода Compose.disposeComposition прекращена. Вместо этого используйте метод dispose для объекта Composition, возвращенного методом setContent. Функция androidx.compose.Compose.subcomposeInto перенесена в androidx.ui.core.subcomposeInto. Метод ComponentNode#emitInsertAt переименован в ComponentNode#insertAt. Метод ComponentNode#emitRemoveAt переименован в ComponentNode#removeAt. Метод ComponentNode#emitMode переименован в ComponentNode#move (Idef00).