Переход
Последнее обновление | Стабильный выпуск | Кандидат на выпуск | Бета-версия | Альфа-релиз |
---|---|---|---|---|
11 декабря 2024 г. | 1.5.1 | - | - | 1.6.0-альфа01 |
Объявление зависимостей
Чтобы добавить зависимость от Transition, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .
Добавьте зависимости для нужных вам артефактов в файл build.gradle
для вашего приложения или модуля:
классный
dependencies { // Java language implementation implementation "androidx.transition:transition:1.5.1" // Kotlin implementation "androidx.transition:transition-ktx:1.5.1" }
Котлин
dependencies { // Java language implementation implementation("androidx.transition:transition:1.5.1") // Kotlin implementation("androidx.transition:transition-ktx:1.5.1") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Дополнительную информацию см . в документации по системе отслеживания проблем .
Версия 1.6
Версия 1.6.0-альфа01
11 декабря 2024 г.
Выпущены androidx.transition:transition:1.6.0-alpha01
и androidx.transition:transition-ktx:1.6.0-alpha01
. Версия 1.6.0-alpha01 содержит эти коммиты .
Новые возможности
- Переход теперь устанавливает несвязный родительский элемент для
ViewOverlays
используемого для анимации его переходов. Это позволяет разрешать владельцев через непересекающийся родительский элемент, что означает, что теперь вы можете правильно разрешатьViewModels
, жизненные циклы и т. д. во время перехода. ( I10a16 , б/340894487 , б/287484338 )
Исправления ошибок
- Эта библиотека теперь использует аннотации NULL NULL JSpecify , которые являются типизированными. Разработчики Kotlin должны использовать следующие аргументы компилятора для обеспечения правильного использования:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
( I1f54e , b/326456246 ) - Убрано ручное определение доступа к API новой платформы, поскольку это происходит автоматически посредством моделирования API при использовании R8 с AGP 7.3 или новее (например, R8 версии 3.3) и для всех сборок при использовании AGP 8.1 или новее (например, D8 версии 8.1). Клиентам, не использующим AGP, рекомендуется выполнить обновление до D8 версии 8.1 или более поздней. Более подробную информацию можно найти в этой статье . ( Ia60e0 , б/345472586 )
Версия 1.5
Версия 1.5.1
24 июля 2024 г.
Выпущены androidx.transition:transition:1.5.1
и androidx.transition:transition-ktx:1.5.1
. Версия 1.5.1 содержит эти коммиты .
Исправления ошибок
- Исправлена проблема, из-за которой вызовы
animateToStart()
илиanimateToEnd()
при переходе с возможностью поиска игнорировались, если переход не был запущен. ( I44d96 , б/338624457 )
Версия 1.5.0
1 мая 2024 г.
Выпущены androidx.transition:transition:1.5.0
и androidx.transition:transition-ktx:1.5.0
. Версия 1.5.0 содержит эти коммиты .
Важные изменения с версии 1.4.0
- Переходы поддерживают поиск по API 34 и выше. В
TransitionManager
был добавлен новый API —controlDelayedTransition()
, который возвращаетTransitionSeekController
, позволяющий искатьTransition
. Эта функция используется фрагментом 1.7.0 для автоматического поиска переходов при использовании прогнозируемого жеста назад. - У переходов есть новый метод
getRootTransition()
, который возвращает переход, содержащий текущий переход, или текущий переход, если он не содержится ни в одном другом переходе. Это может быть полезно, если разработчику необходимо иметь прослушиватели, когда начнется или закончится весь переход. -
TransitionListeners
теперь есть новые прослушивателиonTransitionStart()
иonTransitionEnd()
, которые позволяют разработчику узнать, начинается или заканчивается переход в обратном направлении или нет. Это может быть важно для разработки переходов с возможностью поиска, которые имеютTransitionListeners
.
Версия 1.5.0-rc02
17 апреля 2024 г.
Выпущены androidx.transition:transition:1.5.0-rc02
и androidx.transition:transition-ktx:1.5.0-rc02
. Версия 1.5.0-rc02 содержит эти коммиты .
Обновление зависимостей
- Обновлена зависимость фрагмента до версии 1.7.0-rc02 , в которой исправлена ошибка, из-за которой если в транзакцию был добавлен недоступный для поиска общий элемент, в котором все остальные переходы были доступны для поиска, происходил сбой.
Версия 1.5.0-rc01
3 апреля 2024 г.
Выпущены androidx.transition:transition:1.5.0-rc01
и androidx.transition:transition-ktx:1.5.0-rc01
. Версия 1.5.0-rc01 содержит эти коммиты .
Версия 1.5.0-бета01
20 марта 2024 г.
Выпущены androidx.transition:transition:1.5.0-beta01
и androidx.transition:transition-ktx:1.5.0-beta01
. Версия 1.5.0-beta01 содержит эти коммиты .
Исправления ошибок
- Исправлена проблема во фрагментах, из-за которой прерывание входящих переходов с помощью интеллектуального жеста назад приводило к уничтожению входящего представления, что потенциально могло оставить пустой экран. ( Id3f22 , б/319531491 )
Версия 1.5.0-альфа06
10 января 2024 г.
Выпущены androidx.transition:transition:1.5.0-alpha06
и androidx.transition:transition-ktx:1.5.0-alpha06
. Версия 1.5.0-alpha06 содержит эти коммиты.
Исправления ошибок
- Когда используется
TransitionSeekController.animateToStart()
, добавленныеTransitionListeners
теперь будут вызыватьonTransitionEnd()
после того, какanimateToStart()
далRunnable
. ( Ic6a55 , б/307624554 )
Обновление зависимостей
- Зависимость фрагмента обновлена до
1.7.0-alpha08
.
Версия 1.5.0-альфа05
29 ноября 2023 г.
Выпущены androidx.transition:transition:1.5.0-alpha05
и androidx.transition:transition-ktx:1.5.0-alpha05
. Версия 1.5.0-alpha05 содержит эти коммиты.
Исправления ошибок
- Исправлено исключение
NullPointerException
, вызванное установкой перехода общего элемента и невозможностью установитьenter/exitTransition
. ( I8472b ) - Исправлена проблема, из-за которой
animateToStart()
сSlide()
не удалось вернуть вид обратно в исходное положение ( I698f4 , b/300157785 ). - Исправлена проблема повторного входа в переходе, из-за которой нарушалась отмена. ( Иддцче , б/308379201 )
Версия 1.5.0-альфа04
4 октября 2023 г.
Выпущены androidx.transition:transition:1.5.0-alpha04
и `androidx.transition:transition-ktx:1.5.0-alpha04. Версия 1.5.0-alpha04 содержит эти коммиты.
Изменения API
- Критическое изменение . Метод
animateToStart()
теперь принимаетRunnable
, который следует использовать для возврата переходных представлений в исходное состояние.
Версия 1.5.0-альфа03
20 сентября 2023 г.
Выпущены androidx.transition:transition:1.5.0-alpha03
и androidx.transition:transition-ktx:1.5.0-alpha03
. Версия 1.5.0-alpha03 содержит эти коммиты.
Новые возможности
- Теперь Transition обеспечивает поддержку анимации Predictive Back в приложении на устройствах Android 14 при использовании с Fragment
1.7.0-alpha05
.
Исправления ошибок
- Исправлена ошибка прерывания слайд-перехода. Когда переход слайдов прерывал входящий переход, чтобы удалить вид, он переходил в неправильное положение. ( I946f8 , б/297427333 )
Версия 1.5.0-альфа02
6 сентября 2023 г.
Выпущены androidx.transition:transition:1.5.0-alpha02
и androidx.transition:transition-ktx:1.5.0-alpha02
. Версия 1.5.0-alpha02 содержит эти коммиты.
Новые возможности
-
TransitionSeekController
теперь позволяет вам устанавливать прогресс как часть общей продолжительности с помощьюsetCurrentFragment()
. ( аосп/2647607 ) -
TransitionSeekController
теперь позволяет наблюдать за прогрессом при использованииanimateToStart()
иanimateToEnd()
путем вызоваaddOnProgressChangedListener
. ( аосп/2647607 ) - Добавлен
TransitionManager.seekTo()
позволяющий использовать сцены для поиска переходов. ( аосп/2647607 ) - Добавлена анимация на основе физики для поиска переходов. Он использует одномерный трекер скорости для отслеживания изменения прогресса с помощью
setCurrentFraction()
илиsetCurrentPlayTimeMillis()
и использует его для начальной скоростиanimateToStart
иanimateToEnd
. ( аосп/2647607 )
Исправления ошибок
- Исправлено мерцание при поиске
AutoTransition
. ( аосп/2643369 ) - Исправлена ошибка, из-за которой переход
Slide
переходил в неправильную начальную позицию при прерывании. ( аосп/2733729 , б/297427333 )
Обновление зависимостей
- Переход теперь компилируется с API 34.
Версия 1.5.0-альфа01
10 мая 2023 г.
Выпущены androidx.transition:transition:1.5.0-alpha01
и androidx.transition:transition-ktx:1.5.0-alpha01
. Эта версия разработана во внутренней ветке.
Новые возможности
- Переходы поддерживают поиск по API 34 и выше. В
TransitionManager
был добавлен новый API —controlDelayedTransition()
, который возвращаетTransisionSeekController
, позволяющий искать переход.
Изменения API
-
TransitionManager
появился новый методcontrolDelayedTransition()
, который позволяет приложениям контролировать ход анимации перехода в API 34+. ВозвращенныйTransitionSeekController
сообщает разработчику, когда переход готов к поиску, продолжительность анимации и позволяет установить текущее время анимации.controlDelayedTransition()
поддерживает только переходы, которые переопределяютisSeekable()
для возврата true. - У переходов есть новый метод
getRootTransition()
, который возвращает переход, содержащий текущий переход, или текущий переход, если он не содержится ни в одном другом переходе. Это может быть полезно, если разработчику необходимо иметь прослушиватели, когда начнется или закончится весь переход. -
TransitionListeners
теперь есть новые прослушивателиonTransitionStart()
иonTransitionEnd()
, которые позволяют разработчику узнать, начинается или заканчивается переход в обратном направлении или нет. Это может быть важно для разработки переходов с возможностью поиска, которые имеютTransitionListeners
.
Исправления ошибок
- Переходы теперь копируют свои
TransitionListeners
при клонировании. Это означает, что добавление новых прослушивателей во времяcreateAnimator()
не повлияет на корневой переход.
Версия 1.4.1
Версия 1.4.1
21 апреля 2021 г.
Выпущены androidx.transition:transition:1.4.1
и androidx.transition:transition-ktx:1.4.1
. Версия 1.4.1 содержит эти коммиты.
Исправления ошибок
- Исправлена проблема, из-за которой запуск
Transition
в одном контейнере непреднамеренно приостанавливал другие выполняемые переходы в отдельных контейнерах, в результате чего эти другие переходы никогда не завершались. ( аосп/1664439 , б/182845041 )
Версия 1.4.0
Версия 1.4.0
27 января 2021 г.
Выпущены androidx.transition:transition:1.4.0
и androidx.transition:transition-ktx:1.4.0
. Версия 1.4.0 содержит эти коммиты.
Основные изменения с версии 1.3.0
- Артефакт
transition-ktx
представляет расширения Kotlin для добавления прослушивателей к экземплярам AndroidXTransition
. ( б / 138870873 )
Версия 1.4.0-rc01
2 декабря 2020 г.
androidx.transition:transition:1.4.0-rc01
и androidx.transition:transition-ktx:1.4.0-rc01
выпущены без изменений по сравнению с 1.4.0-beta01
. Версия 1.4.0-rc01 содержит эти коммиты.
Версия 1.4.0-бета01
22 июля 2020 г.
androidx.transition:transition:1.4.0-beta01
и androidx.transition:transition-ktx:1.4.0-beta01
выпущены без изменений с версии 1.4.0-alpha01
. Версия 1.4.0-beta01 содержит эти коммиты.
Версия 1.4.0-альфа01
24 июня 2020 г.
Выпущены androidx.transition:transition:1.4.0-alpha01
и androidx.transition:transition-ktx:1.4.0-alpha01
. Версия 1.4.0-alpha01 содержит эти коммиты.
Новые возможности
- Артефакт
transition-ktx
представляет расширения Kotlin для добавления прослушивателей к экземплярам AndroidXTransition
. ( б / 138870873 )
Версия 1.3.1
Версия 1.3.1
19 февраля 2020 г.
Выпущен androidx.transition:transition:1.3.1
. Версия 1.3.1 содержит эти коммиты.
Исправления ошибок
- Исправлена ошибка, из-за которой некоторые анимированные представления были неправильно обрезаны при использовании ChangeTransform ( b/148798452 ).
Версия 1.3.0
Версия 1.3.0
22 января 2020 г.
Выпущен androidx.transition:transition:1.3.0
. Версия 1.3.0 содержит эти коммиты .
Важные изменения с версии 1.2.0
- Улучшения для фрагмента 1.2.0 : улучшена интеграция с фрагментом 1.2.0 , чтобы гарантировать, что представление фрагмента не будет уничтожено до завершения перехода и что переходы будут отменены в соответствующее время.
Версия 1.3.0-rc02
4 декабря 2019 г.
Выпущен androidx.transition:transition:1.3.0-rc02
. Версия 1.3.0-rc02 содержит эти коммиты .
Исправления ошибок
- Исправлена проблема, из-за которой виды неправильно помечались
INVISIBLE
после открытия скрытого фрагмента. ( б / 70793925 )
Версия 1.3.0-rc01
23 октября 2019 г.
androidx.transition:transition:1.3.0-rc01
выпущен без изменений с 1.3.0-beta01
. Версия 1.3.0-rc01 содержит эти коммиты .
Версия 1.3.0-бета01
9 октября 2019 г.
Выпущен androidx.transition:transition:1.3.0-beta01
. Версия 1.3.0-beta01 содержит эти коммиты .
Новые возможности
- Улучшена интеграция с фрагментом
1.2.0-beta01
чтобы гарантировать, что представление фрагмента не будет уничтожено до завершения перехода и что переходы будут отменены в соответствующее время. ( аосп/1119841 )
Версия 1.2.0
Версия 1.2.0
9 октября 2019 г.
androidx.transition:transition:1.2.0
выпущен без изменений по сравнению с версией 1.2.0-rc01. Версия 1.2.0 содержит эти коммиты .
Важные изменения по сравнению с версией 1.1.0
Эту версию следует использовать, если вы ориентируетесь на уровень API 29. В противном случае некоторые переходы не будут работать должным образом. Вместо вызовов отражения в этой версии используются новые общедоступные методы, добавленные в уровне API 29. Это часть наших ограничений на интерфейсы, не относящиеся к SDK.
Версия 1.2.0-rc01
5 сентября 2019 г.
androidx.transition:transition:1.2.0-rc01
выпущен без изменений с версии 1.2.0-beta01
. Коммиты, включенные в эту версию, можно найти здесь .
Версия 1.2.0-бета01
2 июля 2019 г.
Выпущен androidx.transition:transition:1.2.0-beta01
. Коммиты, включенные в эту версию, можно найти здесь .
Новые возможности
- Эту версию следует использовать, если вы указываете 29 в качестве
targetSdkVersion
. В противном случае некоторые переходы не будут работать должным образом. Вместо вызовов отражения в этой версии используются новые общедоступные методы, добавленные в уровне API 29. Это часть наших ограничений на интерфейсы, не относящиеся к SDK.
Версия 1.2.0-альфа01
7 мая 2019 г.
Выпущен androidx.transition:transition:1.2.0-alpha01
.
Новые возможности
- Эту версию следует использовать, если вы указываете Q в качестве
targetSdkVersion
. В противном случае некоторые переходы не будут работать должным образом. Вместо вызовов отражения в этой версии используются новые общедоступные методы, добавленные в Q. Это часть наших ограничений на интерфейсы, не относящиеся к SDK.
Версия 1.1.0
Версия 1.1.0
2 июля 2019 г.
androidx.transition:transition:1.1.0
выпущен без изменений по сравнению с 1.1.0-rc02
. Коммиты, включенные в эту версию, можно найти здесь .
Версия 1.1.0-rc02
5 июня 2019 г.
androidx.transition:transition:1.1.0-rc02
выпущен. Коммиты, включенные в эту версию, можно найти здесь .
Исправления ошибок
- Исправлена ошибка, из-за которой
TransitionManager.endTransitions()
корректно работал с зависимыми переходами. ( аосп/946400 )
Версия 1.1.0-rc01
7 мая 2019 г.
androidx.transition:transition:1.1.0-rc01
выпущен. Коммиты, включенные в эту версию, можно найти здесь .
Версия 1.1.0-бета01
3 апреля 2019 г.
Выпущен androidx.transition:transition:1.1.0-beta01
. Коммиты, включенные в эту версию, можно найти здесь .
Исправления ошибок
- Исправлена ошибка кэширования
ViewGroupOverlay
вVisibility
, возникающая на уровне API 17 и ниже ( aosp/937350 ).
Версия 1.1.0-альфа02
13 марта 2019 г.
Выпущен androidx.transition:transition:1.1.0-alpha02
. Полный список коммитов, включённых в эту версию, можно найти здесь .
Изменения API
- Тип параметра метода
Scene.getCurrentScene()
был изменен сView
наViewGroup
.
Исправления ошибок
-
SidePropagation
не работает, если дополнительная задержка предоставляется черезsetStartDelay()
( b/119839526 ). -
ChangeImageTransform
применяет неправильную матрицу при прерывании до API 21 ( b/123226255 ). -
ChangeTransform
в некоторых случаях работает некорректно до API 21 ( b/125777978 ).
Версия 1.1.0-альфа01
3 декабря 2018 г.
Изменения API
- aosp/807055 : метод
Scene.getCurrentScene(View)
стал общедоступным. Это позволяет вам писать собственную условную логику в зависимости от текущей сцены.
Исправления ошибок
- Исправлен сбой при использовании
TransitionManager
для свертывания/развертывания элемента вRecyclerView
( b/37129527 ). - Исправлена некорректная анимация при применении двух переходов видимости ( b/62629600 ).
- Разрешить переопределение значений, таких как продолжительность и интерполятор, для дочерних элементов TransitionSet ( b/64644617 ).
- Исправлено множество других мелких ошибок.