Transition
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2024년 12월 11일 | 1.5.1 | - | - | 1.6.0-alpha01 |
종속 항목 선언
Transition의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { // Java language implementation implementation "androidx.transition:transition:1.5.1" // Kotlin implementation "androidx.transition:transition-ktx:1.5.1" }
Kotlin
dependencies { // Java language implementation implementation("androidx.transition:transition:1.5.1") // Kotlin implementation("androidx.transition:transition-ktx:1.5.1") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.6
버전 1.6.0-alpha01
2024년 12월 11일
androidx.transition:transition:1.6.0-alpha01
및 androidx.transition:transition-ktx:1.6.0-alpha01
이 출시되었습니다. 버전 1.6.0-alpha01에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 이제 전환은 전환 애니메이션에 사용되는
ViewOverlays
의 불연속 상위 요소를 설정합니다. 이렇게 하면 불일치하는 상위를 통해 소유자를 확인할 수 있습니다. 즉, 이제 전환 중에ViewModels
, 수명 주기 등을 올바르게 확인할 수 있습니다. (I10a16, b/340894487, b/287484338)
버그 수정
- 이제 이 라이브러리는 유형 사용인 JSpecify nullness 주석을 사용합니다. Kotlin 개발자는 다음 컴파일러 인수를 사용하여 올바른 사용을 적용해야 합니다.
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I1f54e, b/326456246) - 새 플랫폼 API에 대한 액세스 수동 개요가 삭제되었습니다. AGP 7.3 이상 (예: R8 버전 3.3)에서 R8을 사용하거나 AGP 8.1 이상 (예: D8 버전 8.1)을 사용할 때 모든 빌드에서 API 모델링을 통해 자동으로 이루어지기 때문입니다. AGP를 사용하지 않는 클라이언트는 D8 버전 8.1 이상으로 업데이트하는 것이 좋습니다. 자세한 내용은 이 도움말을 참조하세요. (Ia60e0, b/345472586)
버전 1.5
버전 1.5.1
2024년 7월 24일
androidx.transition:transition:1.5.1
및 androidx.transition:transition-ktx:1.5.1
이 출시되었습니다. 버전 1.5.1에는 이 커밋이 포함되어 있습니다.
버그 수정
- 전환이 시작되지 않은 경우 탐색 가능한 전환에서
animateToStart()
또는animateToEnd()
호출이 무시되는 문제를 수정했습니다. (I44d96, b/338624457)
버전 1.5.0
2024년 5월 1일
androidx.transition:transition:1.5.0
및 androidx.transition:transition-ktx:1.5.0
이 출시되었습니다. 버전 1.5.0에는 이 커밋이 포함되어 있습니다.
1.4.0 이후 중요 변경사항
- 전환은 API 34 이상에서 탐색을 지원합니다.
TransitionManager
에 새로운 APIcontrolDelayedTransition()
가 추가되었습니다. 이 API는Transition
을 탐색할 수 있는TransitionSeekController
를 반환합니다. 이 기능은 뒤로 탐색 예측 동작을 사용할 때 Fragment 1.7.0에서 전환을 자동으로 탐색하는 데 사용됩니다. - 전환에는 현재 전환이 포함된 전환을 반환하는 새 메서드
getRootTransition()
가 있습니다. 현재 전환이 다른 전환에 포함되지 않은 경우에는 현재 전환을 반환합니다. 이는 개발자가 전체 전환이 시작되거나 종료될 때의 리스너를 보유해야 하는 경우에 유용할 수 있습니다. - 이제
TransitionListeners
에는 개발자가 전환이 시작되는지 또는 역방향으로 종료되는지 알 수 있는 새로운onTransitionStart()
및onTransitionEnd()
리스너가 있습니다. 이는TransitionListeners
가 있는 탐색 가능한 전환을 개발하는 데 중요할 수 있습니다.
버전 1.5.0-rc02
2024년 4월 17일
androidx.transition:transition:1.5.0-rc02
및 androidx.transition:transition-ktx:1.5.0-rc02
이 출시되었습니다. 버전 1.5.0-rc02에는 이 커밋이 포함되어 있습니다.
종속 항목 업데이트
- Fragment 종속 항목을 버전 1.7.0-rc02로 업데이트하여, 다른 모든 전환이 탐색 가능한 트랜잭션에 탐색 불가능한 공유 요소가 추가되면 비정상 종료가 발생하는 버그를 수정했습니다.
버전 1.5.0-rc01
2024년 4월 3일
androidx.transition:transition:1.5.0-rc01
및 androidx.transition:transition-ktx:1.5.0-rc01
이 출시되었습니다. 버전 1.5.0-rc01에는 이 커밋이 포함되어 있습니다.
버전 1.5.0-beta01
2024년 3월 20일
androidx.transition:transition:1.5.0-beta01
및 androidx.transition:transition-ktx:1.5.0-beta01
이 출시되었습니다. 버전 1.5.0-beta01에는 이 커밋이 포함되어 있습니다.
버그 수정
- 뒤로 탐색 예측 동작으로 수신 전환을 중단하면 진입 뷰가 소멸되어 빈 화면이 남을 수 있는 Fragments의 문제를 수정했습니다. (Id3f22, b/319531491)
버전 1.5.0-alpha06
2024년 1월 10일
androidx.transition:transition:1.5.0-alpha06
및 androidx.transition:transition-ktx:1.5.0-alpha06
이 출시되었습니다. 버전 1.5.0-alpha06에 포함된 커밋을 확인하세요.
버그 수정
TransitionSeekController.animateToStart()
가 사용되면 추가된TransitionListeners
에animateToStart()
의 지정된Runnable
후에onTransitionEnd()
가 호출됩니다. (Ic6a55, b/307624554)
종속 항목 업데이트
- Fragment 종속 항목이
1.7.0-alpha08
로 업데이트되었습니다.
버전 1.5.0-alpha05
2023년 11월 29일
androidx.transition:transition:1.5.0-alpha05
및 androidx.transition:transition-ktx:1.5.0-alpha05
이 출시되었습니다. 버전 1.5.0-alpha05에 포함된 커밋을 확인하세요.
버그 수정
- 공유 요소 전환을 설정하고
enter/exitTransition
도 설정하지 못해 발생하는NullPointerException
를 수정했습니다. (I8472b) Slide()
가 있는animateToStart()
가 뷰를 시작 위치로 다시 이동하지 못하는 문제를 수정했습니다. (I698f4, b/300157785)- 전환에서 취소를 중단하는 재진입 문제가 수정되었습니다. (Iddcce, b/308379201)
버전 1.5.0-alpha04
2023년 10월 4일
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-alpha03
2023년 9월 20일
androidx.transition:transition:1.5.0-alpha03
및 androidx.transition:transition-ktx:1.5.0-alpha03
이 출시되었습니다. 버전 1.5.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 Transition은 Fragment
1.7.0-alpha05
와 함께 사용될 때 Android 14 기기에서 인앱 뒤로 탐색 예측 애니메이션을 지원합니다.
버그 수정
- 슬라이드 전환 중단 버그가 수정되었습니다. 슬라이드 전환이 뷰를 삭제하기 위한 진입 전환을 중단하면 잘못된 위치로 이동했습니다. (I946f8, b/297427333)
버전 1.5.0-alpha02
2023년 9월 6일
androidx.transition:transition:1.5.0-alpha02
및 androidx.transition:transition-ktx:1.5.0-alpha02
이 출시되었습니다. 버전 1.5.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
TransitionSeekController
를 사용하면setCurrentFragment()
를 통해 진행 상황을 총 시간의 비율로 설정할 수 있습니다. (aosp/2647607) - 이제
TransitionSeekController
에서addOnProgressChangedListener
를 호출하여animateToStart()
및animateToEnd()
를 사용할 때 진행 상황을 관찰할 수 있습니다. (aosp/2647607) - 전환 탐색에 장면을 사용할 수 있도록
TransitionManager.seekTo()
를 추가했습니다. (aosp/2647607) - 탐색 전환에 물리 기반 애니메이션을 추가했습니다. 1차원 속도 추적기를 사용하여
setCurrentFraction()
또는setCurrentPlayTimeMillis()
로 진행 변경사항을 추적하고 이를animateToStart
및animateToEnd
의 초기 속도에 사용합니다. (aosp/2647607)
버그 수정
AutoTransition
를 탐색할 때 발생하는 플리커링 문제를 수정했습니다. (aosp/2643369)- 중단 시
Slide
전환이 잘못된 시작 위치로 이동하는 문제를 수정했습니다. (aosp/2733729, b/297427333)
종속 항목 업데이트
- 이제 전환이 API 34로 컴파일됩니다.
버전 1.5.0-alpha01
2023년 5월 10일
androidx.transition:transition:1.5.0-alpha01
및 androidx.transition:transition-ktx:1.5.0-alpha01
이 출시되었습니다. 이 버전은 내부 브랜치에서 개발되었습니다.
새로운 기능
- 전환은 API 34 이상에서 탐색을 지원합니다. 전환을 탐색할 수 있는
TransisionSeekController
를 반환하는 새로운 API인controlDelayedTransition()
가TransitionManager
에 추가되었습니다.
API 변경사항
TransitionManager
에는 애플리케이션이 API 34 이상에서 전환 애니메이션의 진행 상황을 제어할 수 있는 새로운 메서드controlDelayedTransition()
가 있습니다. 반환된TransitionSeekController
를 통해 개발자는 전환을 탐색할 준비가 되었는지, 애니메이션의 길이를 알 수 있으며 애니메이션의 현재 시간을 설정할 수 있습니다.isSeekable()
를 재정의하여 true를 반환하는 전환만controlDelayedTransition()
에서 지원됩니다.- 전환에는 현재 전환이 포함된 전환을 반환하는 새 메서드
getRootTransition()
가 있습니다. 현재 전환이 다른 전환에 포함되지 않은 경우에는 현재 전환을 반환합니다. 이는 개발자가 전체 전환이 시작되거나 종료될 때의 리스너를 보유해야 하는 경우에 유용할 수 있습니다. - 이제
TransitionListeners
에는 개발자가 전환이 시작되는지 또는 역방향으로 종료되는지 알 수 있는 새로운onTransitionStart()
및onTransitionEnd()
리스너가 있습니다. 이는TransitionListeners
가 있는 탐색 가능한 전환을 개발하는 데 중요할 수 있습니다.
버그 수정
- 이제 전환이 클론될 때
TransitionListeners
를 복사합니다. 즉,createAnimator()
중에 새 리스너를 추가해도 루트 전환에는 영향을 미치지 않습니다.
버전 1.4.1
버전 1.4.1
2021년 4월 21일
androidx.transition:transition:1.4.1
및 androidx.transition:transition-ktx:1.4.1
이 출시되었습니다. 버전 1.4.1에 포함된 커밋을 확인하세요.
버그 수정
- 한 컨테이너에서
Transition
을 시작하면 별도의 컨테이너에서 실행 중인 다른 전환이 의도치 않게 일시중지되어 다른 전환이 완료되지 않는 문제를 해결했습니다. (aosp/1664439, b/182845041)
버전 1.4.0
버전 1.4.0
2021년 1월 27일
androidx.transition:transition:1.4.0
및 androidx.transition:transition-ktx:1.4.0
가 출시되었습니다. 버전 1.4.0에 포함된 커밋을 확인하세요.
1.3.0 이후 주요 변경사항
transition-ktx
아티팩트는 AndroidXTransition
인스턴스에 리스너를 추가하기 위한 Kotlin 확장 프로그램을 도입합니다. (b/138870873)
버전 1.4.0-rc01
2020년 12월 2일
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-beta01
2020년 7월 22일
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-alpha01
2020년 6월 24일
androidx.transition:transition:1.4.0-alpha01
및 androidx.transition:transition-ktx:1.4.0-alpha01
가 출시되었습니다. 버전 1.4.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
transition-ktx
아티팩트는 AndroidXTransition
인스턴스에 리스너를 추가하기 위한 Kotlin 확장 프로그램을 도입합니다. (b/138870873)
버전 1.3.1
버전 1.3.1
2020년 2월 19일
androidx.transition:transition:1.3.1
가 출시되었습니다. 버전 1.3.1에 포함된 커밋을 확인하세요.
버그 수정
- ChangeTransform을 사용할 때 일부 애니메이션 보기가 잘못 잘리는 버그 수정(b/148798452)
버전 1.3.0
버전 1.3.0
2020년 1월 22일
androidx.transition:transition:1.3.0
가 출시되었습니다. 버전 1.3.0에 포함된 커밋을 확인하세요.
1.2.0 이후 중요 변경사항
- Fragment 1.2.0의 개선사항: 전환이 완료되기 전에 Fragment의 뷰가 없어지지 않도록 하고 적절한 시점에 전환이 취소되도록 Fragment 1.2.0과의 통합이 개선되었습니다.
버전 1.3.0-rc02
2019년 12월 4일
androidx.transition:transition:1.3.0-rc02
가 출시되었습니다. 버전 1.3.0-rc02에 포함된 커밋을 확인하세요.
버그 수정
- 숨겨진 프래그먼트를 표시한 후 뷰가
INVISIBLE
로 잘못 표시되는 문제가 해결되었습니다. (b/70793925)
버전 1.3.0-rc01
2019년 10월 23일
androidx.transition:transition:1.3.0-rc01
이 1.3.0-beta01
이후 변경사항 없이 출시되었습니다. 버전 1.3.0-rc01에 포함된 커밋을 확인하세요.
버전 1.3.0-beta01
2019년 10월 9일
androidx.transition:transition:1.3.0-beta01
가 출시되었습니다. 버전 1.3.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
- 전환이 완료되기 전에 Fragment의 뷰가 없어지지 않도록 하고 적절한 시점에 전환이 취소되도록 Fragment
1.2.0-beta01
과의 통합이 개선되었습니다. (aosp/1119841)
버전 1.2.0
버전 1.2.0
2019년 10월 9일
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
2019년 9월 5일
androidx.transition:transition:1.2.0-rc01
버전은 1.2.0-beta01
이후 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버전 1.2.0-beta01
2019년 7월 2일
androidx.transition:transition:1.2.0-beta01
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
새로운 기능
- 29를
targetSdkVersion
으로 지정한다면 이 버전을 사용해야 합니다. 그렇지 않으면 일부 전환이 제대로 작동하지 않습니다. 리플렉션 호출 대신 이 버전은 API 수준 29에 추가된 새로운 공개 메서드를 사용합니다. 이는 비 SDK 인터페이스 작업에 관한 제한사항의 일부입니다.
버전 1.2.0-alpha01
2019년 5월 7일
androidx.transition:transition:1.2.0-alpha01
이 출시되었습니다.
새로운 기능
- Q를
targetSdkVersion
으로 지정한다면 이 버전을 사용해야 합니다. 그렇지 않으면 일부 전환이 제대로 작동하지 않습니다. 리플렉션 호출 대신 이 버전은 Q에 추가된 새로운 공개 메서드를 사용합니다. 이는 비 SDK 인터페이스 작업에 관한 제한사항의 일부입니다.
버전 1.1.0
버전 1.1.0
2019년 7월 2일
androidx.transition:transition:1.1.0
버전은 1.1.0-rc02
에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버전 1.1.0-rc02
2019년 6월 5일
androidx.transition:transition:1.1.0-rc02
가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버그 수정
TransitionManager.endTransitions()
가 종속 전환과 올바르게 작동하도록 수정했습니다. (aosp/946400)
버전 1.1.0-rc01
2019년 5월 7일
androidx.transition:transition:1.1.0-rc01
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버전 1.1.0-beta01
2019년 4월 3일
androidx.transition:transition:1.1.0-beta01
가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버그 수정
- API 수준 17 이하에서 발생하는
Visibility
의ViewGroupOverlay
캐싱 버그를 수정했습니다. (aosp/937350)
버전 1.1.0-alpha02
2019년 3월 13일
androidx.transition:transition:1.1.0-alpha02
이 출시되었습니다. 이 버전에 포함된 커밋의 전체 목록은 여기에서 확인할 수 있습니다.
API 변경사항
Scene.getCurrentScene()
의 메서드 매개변수 유형을View
에서ViewGroup
으로 변경했습니다.
버그 수정
setStartDelay()
를 통해 추가 지연이 제공될 때SidePropagation
이 작동하지 않습니다. (b/119839526)- API 21 이전에서
ChangeImageTransform
이 중단될 때 잘못된 행렬을 적용합니다. (b/123226255) - API 21 이전에서
ChangeTransform
이 때에 따라 부정확하게 작동합니다. (b/125777978)
버전 1.1.0-alpha01
2018년 12월 3일
API 변경사항
- aosp/807055:
Scene.getCurrentScene(View)
메서드가 공개되었습니다. 이 메서드를 통해 현재 장면에 따라 맞춤 조건부 로직을 작성할 수 있습니다.
버그 수정
TransitionManager
를 사용하여RecyclerView
의 항목을 접거나 펼칠 때 발생하는 비정상 종료 문제를 수정했습니다. (b/37129527)- 두 개의 공개 상태 전환이 적용될 때 발생하는 잘못된 애니메이션을 수정했습니다(b/62629600).
- TransitionSet 하위 요소의 지속 시간이나 보간기와 같은 값을 재정의할 수 있습니다(b/64644617).
- 기타 여러 사소한 버그를 수정했습니다.