Compose Material 3 적응형
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2025년 7월 2일 | 1.1.0 | - | - | 1.2.0-alpha08 |
종속 항목 선언
Compose의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { implementation "androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
Kotlin
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
Compose Material3 적응형 버전 1.2
버전 1.2.0-alpha08
2025년 7월 2일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08
이 출시되었습니다. 버전 1.2.0-alpha08에는 이 커밋이 포함되어 있습니다.
버전 1.2.0-alpha07
2025년 6월 18일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha07
이 출시되었습니다. 버전 1.2.0-alpha07에는 이 커밋이 포함되어 있습니다.
API 변경사항
currentWindowAdaptiveInfo()
함수가 대형 및 초대형 창 너비 크기 클래스를 지원하도록 하고calculatePosture()
및currentWindowDpSize()
함수를 안정 버전으로 승격 (I92e97)
버전 1.2.0-alpha06
2025년 5월 20일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06
이 출시되었습니다. 버전 1.2.0-alpha06에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 이제 기본 창 스캐폴드 지시어 계산 함수가 L 및 XL 창 너비 크기 클래스를 지원합니다.
API 변경사항
Modifier.paneExpansionDraggable
에서 기본 접근성 시맨틱스를 제공하고 관련 API를 안정화 버전으로 승격 (Idb818)- 부양된 창으로 드래그하여 크기 조절 지원 (Idadd3)
- 공중에 떠 있는 창의 스크림 지원 (I9b091)
버전 1.2.0-alpha05
2025년 5월 7일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05
이 출시되었습니다. 버전 1.2.0-alpha05에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 이제 Material3 적응형 레이아웃에서 창을 플로팅 팝업으로 전환할 수 있는 Levitated 적응 전략을 지원합니다.
API 변경사항
버그 수정
- 적응형 샘플에서 코루틴 범위 사용 수정 (7631016)
버전 1.2.0-alpha04
2025년 4월 23일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04
이 출시되었습니다. 버전 1.2.0-alpha04에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 이제
ListDetailPaneScaffold
및SupportingPaneScaffold
에서 리플로우 전략을 사용할 수 있으며, 이 전략은 단일 창 레이아웃 설정에서 연결된 창을 리플로우합니다.
API 변경사항
버그 수정
- 첫 번째 전환에서 창이 애니메이션되지 않는 버그 수정 (Ib0415)
- 선호하는 높이가 작동하지 않는 문제 수정 (I1913b)
- 스캐폴드 디렉티브가 올바르게 업데이트되지 않는 버그 수정 (0403ab)
버전 1.2.0-alpha03
2025년 4월 9일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03
이 출시되었습니다. 버전 1.2.0-alpha03에는 이러한 커밋이 포함되어 있습니다.
버그 수정
- 단일 창 레이아웃에 드래그 핸들이 잘못 표시되는 문제 수정 (806e443 )
종속 항목 업데이트
- 이제 이 라이브러리는 Kotlin 2.0 언어 수준을 타겟팅하며 KGP 2.0.0 이상이 필요합니다. (Idb6b5)
버전 1.2.0-alpha02
2025년 3월 26일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02
이 출시되었습니다. 버전 1.2.0-alpha02에는 이러한 커밋이 포함되어 있습니다.
버전 1.2.0-alpha01
2025년 3월 12일
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01
이 출시되었습니다. 버전 1.2.0-alpha01에는 이 커밋이 포함되어 있습니다.
API 변경사항
- 개발자가 도입될 새로운 적응 전략에 적용될 창 선호 높이를 제공할 수 있도록
PaneScaffoldScope.preferredHeight
수정자 도입 (I957dd, b/220960090) ComponentOverride
유형을Override
로,ComponentOverrideContext
유형을OverrideScope
로 이름을 바꿉니다. (Id973c)- 일부 구성요소 재정의 메서드의 이름을 바꿉니다. (I222b3)
Compose Material3 적응형 버전 1.1
버전 1.1.0
2025년 3월 12일
androidx.compose.material3.adaptive:adaptive-*:1.1.0
이 출시되었습니다. 버전 1.1.0에는 이러한 커밋이 포함되어 있습니다.
1.0.0 이후 중요 변경사항
- 이제
ListDetailPaneScaffold
및SupportingPaneScaffold
에서 창 확장 기능을 지원합니다. 사용자는 드래그하여 이중 창 레이아웃의 기본 창 분할을 변경할 수 있으며, 개발자는 새로 도입된PaneExpansionState
을 변경하여 런타임에 창 분할을 변경할 수도 있습니다. - 이제
NavigableListDetailPaneScaffold
및NavigableSupportingPaneScaffold
에서 기본 뒤로 탐색 예측 지원을 사용할 수 있습니다.ThreePaneScaffoldPredictiveBackHandler
를 사용하여 자체 3개 창 스캐폴드 구현으로 뒤로 탐색 예측 지원을 제공할 수도 있습니다. - 이제
AnimatedPane
에 서로 다른EnterTransition
및ExitTransition
를 제공하여 창 전환 중에 창 모션을 맞춤설정할 수 있습니다.
버전 1.1.0-rc01
2025년 2월 26일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01
이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
- 3개 창 스캐폴드 예측 뒤로 탐색 비율 사용 중지 (ab6fd0b)
버전 1.1.0-beta02
2025년 2월 12일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02
이 출시되었습니다. 버전 1.1.0-beta02에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 상태 일관성을 유지하기 위해
MutableThreePaneScaffoldState
애니메이션 함수에서isPredictiveBackInProgress
가 설정되는 방식을 변경했습니다. (Idc97f)
버그 수정
- 라이브러리의 나머지 부분과의 일관성을 위해
NavigableListDetailPaneScaffold
및NavigableSupportingPaneScaffold
의 기본 뒤로 동작이PopUntilScaffoldValueChange
로 변경되었습니다. (I873f0) - 창 스캐폴드의 올바른 접근성 탐색 순서를 설정합니다. (67d030)
- 창 콘텐츠 상태가 저장되지 않는 문제 수정 (88b0ff)
- 드래그 대신 대체 접근성 작업 지원 (28266d)
- 현재 창 분할이 변경된 후 이를 알립니다. (0c3a80)
버전 1.1.0-beta01
2025년 1월 29일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01
이 출시되었습니다. 버전 1.1.0-beta01에는 이 커밋이 포함되어 있습니다.
API 변경사항
- 각각 시작과 끝에서 오프셋 유형의 창 확장 앵커를 만드는 팩토리 함수를 도입합니다. (I2eb21)
PaneMotion
인터페이스를 봉인하고 기본 전환 메서드를 삭제합니다. (Ifc4c7)- 현재 앵커를 가져오고 앵커로 애니메이션을 적용하는 API 도입 (Icf95d)
- 창 확장 접근성 API 도입 (Icc669)
PaneScaffoldParentData.preferredWidth
의 유형을 DP로 변경합니다. (Id98ee)
버전 1.1.0-alpha09
2025년 1월 15일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09
이 출시되었습니다. 버전 1.1.0-alpha09에는 이 커밋이 포함되어 있습니다.
API 변경사항
- 새 실험용 주석
ExperimentalMaterial3AdaptiveComponentOverrideApi
추가 및 사용 (Id45aa) ThreePaneScaffoldHorizontalOrder.toLtrOrder
을 숨깁니다. (I6f8d2)ThreePaneScaffoldPredictiveBackHandler
이(가) 공개되었습니다. (I1a995, b/370543873)ThreePaneScaffoldState
에isPredictiveBackInProgress
속성이 추가되었습니다. (I1a995, b/370543873)- 다양한 폼 팩터의 사이드로드 구현을 지원하기 위해
AnimatedPane
의 재정의 메커니즘 생성 (Id7622)
버그 수정
- 고정 방향에 앵커가 없는 경우 발생하는 문제 수정 (df8257d)
버전 1.1.0-alpha08
2024년 12월 12일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08
이 출시되었습니다. 버전 1.1.0-alpha08에는 이 커밋이 포함되어 있습니다.
API 변경사항
currentWindowDpSize
함수 도입 (I99125, b/296300441)PaneScaffoldParentData
및ThreePaneScaffoldHorizontalOrder.toLtrOrder()
노출 (I2d6b7)PaneScaffoldMotionScope
를 삭제하고PaneScaffoldTransitionScope
아래의 필드로 바꿉니다. 또한PaneScaffoldMotionDataProvider
로 이름을 바꾸고 PaneMotionData의 기본 데이터 구조에 대한 액세스를 삭제합니다. 대신 데이터에 액세스하기 위한 getter 및 루핑 메서드를 제공합니다. (Id8884)- 다양한 폼 팩터의 사이드로드 구현을 지원하기 위해
ThreePaneScaffold
의 재정의 메커니즘 생성 (I5280f) - 기본적으로 창 확장 상태를 null로 설정합니다. (Ia65f8, b/376394520)
버전 1.1.0-alpha07
2024년 11월 13일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
이 출시되었습니다. 버전 1.1.0-alpha07에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 적응형 라이브러리에서 드래그 핸들 구현을 삭제하고 M3 버전을 사용하도록 권장 동시에 제공된 드래그 핸들 컴포저블에 창 확장 드래그 기능을 제공하는 수정자를 도입합니다. 필요한 경우 나중에 변경할 수 있도록
DraggableState
를 구현 세부정보로 숨깁니다. (Ib50cd) - UXR 의견에 따라 창 동작 맞춤설정의 진입점을 스캐폴드 함수에서
AnimatedPane
로 이동합니다. (I10f72) - 창 확장을 위한 플링 지원 및 맞춤 애니메이션 사양 도입 (Ie207d, b/362584341)
버그 수정
- 취소 시 뒤로 탐색 예측 문제 수정 (36a3e0a), (b/369899645)
버전 1.1.0-alpha06
2024년 10월 30일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06
이 출시되었습니다. 버전 1.1.0-alpha06에는 이 커밋이 포함되어 있습니다.
API 변경사항
FloatRange
를PaneScaffoldTransitionScope.motionProgress
에 추가합니다. (Iac0dd)- 탐색 가능한 스캐폴드에서 탐색기 매개변수의 유형을 일반 유형으로 변경 (I1da6e)
버전 1.1.0-alpha05
2024년 10월 16일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
이 출시되었습니다. 버전 1.1.0-alpha05에는 이 커밋이 포함되어 있습니다.
API 변경사항
- 더 일관된 모션 동작과 향후 확장성을 보장하기 위해 애니메이션 사양 클래스 도입 (I2d3cc)
- 동작 유형을 제공하고
PaneMotionData
의 currentXXXXX를 originXXXX로 이름을 바꿉니다. (I7c61a)
버전 1.1.0-alpha04
2024년 10월 2일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04
이 출시되었습니다. 버전 1.1.0-alpha04에는 이 커밋이 포함되어 있습니다.
새로운 기능
NavigableListDetailPaneScaffold
및NavigableSupportingPaneScaffold
에 뒤로 탐색 예측 지원이 추가되었습니다. (I4dc21, b/359616816)
API 변경사항
ThreePaneScaffoldNavigator
에ThreePaneScaffoldState
를 추가했습니다. 애니메이션을 사용한 탐색을 지원하기 위해 탐색 메서드가suspend
로 변경되었습니다. 부분 탐색 상태 (예: 뒤로 탐색 예측)를 지원하기 위해seekBack
가 추가되었습니다. (I5a651, b/359616816)- 스캐폴드 값 간 전환을 제어하는
MutableThreePaneScaffoldState
추가 기존ThreePaneScaffoldState
가 읽기 전용으로 변경되었습니다. (Idb3c6) - 기본 창 동작 구현 노출 (I95a7b)
- 창 확장 상태의 초기 앵커 설정 사용 설정 (Ie41b3, b/362350560)
버그 수정
- 드래그 핸들의 최소 터치 타겟 크기를 48x48dp로 강제 적용 (7ce6635, b/366018217)
- 구성 변경 후 고정된 위치 복원 (3c9fc6b, b/362353672)
버전 1.1.0-alpha03
2024년 9월 18일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03
이 출시되었습니다. 버전 1.1.0-alpha03에는 이러한 커밋이 포함되어 있습니다.
버전 1.1.0-alpha02
2024년 9월 4일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
이 출시되었습니다. 버전 1.1.0-alpha02에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- 제작자가 적응형 스캐폴드 상태 변경 중에 기본 동작을 변경할 수 있도록 동작 맞춤설정 (I0bf9c), (I80e66)이 지원됩니다. 제작자는 기본 진입 및 종료 전환 중에서 선택하거나 새로운 동작 범위를 통해 제공되는 정보를 사용하여 순수 맞춤 전환을 구현할 수 있습니다.
- 창 확장 드래그 핸들의 페이드 애니메이션 구현 (46e3c69)
- 기억된
PaneExpansionState
을 저장 가능하도록 설정 (61ff76f)
API 변경사항
- 누락된 창 확장 API를 스캐폴드에 추가 (Ic5bc0)
ThreePaneScaffoldDestinationItem.content
에서contentKey
으로 이름이 변경되었습니다.rememberListDetailPaneScaffoldNavigator
및rememberSupportingPaneScaffoldNavigator
기본 유형 인수가Nothing
에서Any
로 변경되었습니다. (I58749)ThreePaneScaffoldState
를 안정적으로 표시 (I64aec)- 드래그 핸들 매개변수의 범위를 지정합니다 (Ic0aa2).
버전 1.1.0-alpha01
2024년 8월 21일
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01
이 출시되었습니다. 버전 1.1.0-alpha01에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 적응형 스캐폴드의 창 확장 지원 도입
API 변경사항
- 창 확장 API를 공개에 도입 (I301d6)
- 창 값 전환을 제어하는
ThreePaneScaffoldState
도입 이 상태를 허용하는ListDetailPaneScaffold
및SupportingPaneScaffold
의 오버로드가 추가되었습니다. (I5db3b) - 창 확장 키 및 키 제공자 인터페이스 도입 (Id621f)
버그 수정
- 힌지가 제외된 경우 잘못된 파티션 계산 수정 (9dfd483)
Compose Material3 적응형 버전 1.0
버전 1.0.0
2024년 9월 4일
androidx.compose.material3.adaptive:adaptive-*:1.0.0
이 출시되었습니다. 버전 1.0.0에는 이 커밋이 포함되어 있습니다.
1.0.0의 주요 기능
currentWindowSize()
,collectFoldingFeaturesAsState()
,currentWindowAdaptiveInfo()
과 같은 한 줄 컴포저블 함수를 사용하여 창 크기, 폴딩 기능과 같은 앱을 적응시키는 데 필요한 창 정보를 가져옵니다.ListDetailPaneScaffold
및SupportingPaneScaffold
를 사용하여 다양한 창 구성에 따라 자동으로 조정되는 두 개의 Material3 표준 레이아웃을 제공합니다. 이 두 스캐폴드는 제작자의 다양한 요구사항에 맞게 완전히 맞춤설정할 수도 있습니다.ThreePaneScaffoldNavigator
및 관련 기억 함수rememberListDetailPaneScaffoldNavigator()
,rememberSupportingPaneScaffoldNavigator()
를 사용하여 적응형 스캐폴드 내에서 탐색 솔루션을 제공합니다. 적응형이 아닌 환경에서 일반적인 한 번에 하나의 탐색 대상 설정과 비교할 때 여러 탐색 대상을 동시에 표시할 수 있습니다.- 적응형 스캐폴드 상태를 변경할 때의 기본 제공 Material3 애니메이션입니다.
버전 1.0.0-rc01
2024년 8월 21일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
이 출시되었습니다. 버전 1.0.0-rc01에는 이 커밋이 포함되어 있습니다.
버그 수정
- 힌지가 제외된 경우 잘못된 파티션 계산 수정 (9dfd483)
버전 1.0.0-beta04
2024년 6월 26일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
이 출시되었습니다. 버전 1.0.0-beta04에는 이러한 커밋이 포함되어 있습니다.
버그 수정
- 힌지 경계가 업데이트될 때 레이아웃이 그에 따라 업데이트되지 않는 문제 수정 (71e9cf1)
버전 1.0.0-beta03
2024년 6월 12일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
이 출시되었습니다. 버전 1.0.0-beta03에는 이러한 커밋이 포함되어 있습니다.
버그 수정
- beta02에서 잘못된 종속 항목 해결로 인해 발생하는 비정상 종료를 수정합니다.
버전 1.0.0-beta02
2024년 5월 29일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
이 출시되었습니다. 버전 1.0.0-beta02에는 이러한 커밋이 포함되어 있습니다.
버전 1.0.0-beta01
2024년 5월 14일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
이 출시되었습니다. 버전 1.0.0-beta01에는 이 커밋이 포함되어 있습니다.
버전 1.0.0-alpha12
2024년 5월 1일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
이 출시되었습니다. 버전 1.0.0-alpha12에는 이 커밋이 포함되어 있습니다.
API 변경사항
HingeInfo
에isFlat
정보 추가 (Ie0516, b/333784198)- 적응형 API를 실험용이 아닌 것으로 설정 (I1d038)
- 적응형 레이아웃 API를 실험용이 아닌 것으로 설정 (Id23df)
BackNavigationBehavior
이 enum에서 값 클래스로 변경되었습니다. (Id8757)
버그 수정
버전 1.0.0-alpha11
2024년 4월 17일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
이 출시되었습니다. 버전 1.0.0-alpha11에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 범위 인터페이스를 봉인합니다. (Iefa57)
AnimatedPaneScope
를 도입합니다. (I62d73, b/332750742)AdaptStrategy
을 봉인하고 안정화 (Ia28b2)PaneScaffoldDirective
의 복사 메서드 도입 (I9291f)ThreePaneScaffoldScope
를 실험용으로 표시 (I9d527)- 탐색을 지원하는 사용하기 쉬운 스캐폴드 API를 제공합니다. (I263f0, b/321010778)
버전 1.0.0-alpha10
2024년 4월 3일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10
이 출시되었습니다. 버전 1.0.0-alpha10에는 이 커밋이 포함되어 있습니다.
API 변경사항
- 기본 선호 너비를 적응형 및 맞춤설정 가능으로 설정 (Ic3abc)
- 스캐폴드 지시어 계산 함수 이름 변경 (I10855)
- 스캐폴드 API에서 패딩과 인셋 삭제 (I786f8)
- 일반 유형 없이 탐색기 기억 메서드 추가 (I607c3)
버전 1.0.0-alpha09
2024년 3월 20일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
이 출시되었습니다. 버전 1.0.0-alpha09에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
ThreePaneScaffoldScope
에 상태 전환 필드 추가 (I3d917)- 스캐폴드 매개변수를 재정렬합니다. (I4dff5)
AnimatedPane
수정자 매개변수의 기본값을 제공합니다. (I77dd7)
버그 수정
- 패널 모션에 스페이서 크기 포함 (a3174ca)
버전 1.0.0-alpha08
2024년 3월 6일
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
이 출시되었습니다. 버전 1.0.0-alpha08에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 창을 전환할 때 지연된 슬라이딩을 구현합니다. (I1a38e)
API 변경사항
ThreePaneScaffoldState
인터페이스가 삭제되었습니다. (I63f23)
버전 1.0.0-alpha07
2024년 2월 21일