Compose Material 3
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2023년 2월 22일 | 1.0.1 | - | - | 1.1.0-alpha07 |
구조
Compose는 androidx
내의 Maven 그룹 ID 7개의 조합입니다. 각 그룹에는 타겟팅된 기능의 하위 집합이 있으며, 각 기능은 자체적인 출시 노트를 포함하고 있습니다.
다음 표에서는 그룹에 관한 설명과 각 출시 노트 조합의 링크를 제시합니다.
그룹 | 설명 |
---|---|
compose.animation | Jetpack Compose 애플리케이션에서 애니메이션을 빌드하여 풍부한 사용자 경험을 제공합니다. |
compose.compiler | Kotlin 컴파일러 플러그인으로 최적화를 사용 설정하고 @Composable 함수를 변환합니다. |
compose.foundation | 즉시 사용 가능한 구성요소를 사용해 Jetpack Compose 애플리케이션을 작성하고 기초를 확장해 나만의 디자인 시스템 요소를 빌드합니다. |
compose.material | 즉시 사용 가능한 Material Design 구성요소로 Jetpack Compose UI를 빌드합니다. 이는 Compose를 고급 수준에서 사용하는 첫 단계이며, www.material.io에 설명된 것과 동일한 구성요소를 제공합니다. |
compose.material3 | 차세대 Material Design인 Material Design 3 구성요소로 Jetpack Compose UI를 빌드합니다. Material 3은 업데이트된 테마 설정 및 구성요소, Material You 맞춤설정 기능(동적 색상 등)을 포함하며 새로운 Android 12의 시각적 스타일 및 시스템 UI와 일관되도록 설계되었습니다. |
compose.runtime | Compose의 프로그래밍 모델과 상태 관리를 위한 기본 구성요소이며, Compose 컴파일러 플러그인이 타겟팅하는 핵심 런타임입니다. |
compose.ui | 레이아웃, 그리기, 입력 등 기기와 상호작용할 때 필요한 Compose UI의 기본적인 구성요소입니다. |
종속 항목 선언
Compose의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용을 알아보려면 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.0.1" implementation "androidx.compose.material3:material3-window-size-class:1.0.1" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.0.1") implementation("androidx.compose.material3:material3-window-size-class:1.0.1") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.1
버전 1.1.0-alpha07
2023년 2월 22일
androidx.compose.material3:material3:1.1.0-alpha07
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
이 출시되었습니다. 버전 1.1.0-alpha07에 포함된 커밋을 확인하세요.
새로운 기능
rememberTimePickerState()
와 함께 작동하는 시간 입력 컴포저블을 추가했으며 이는 시간 입력의 M3 사양을 따릅니다. (Ia4fab)- 날짜 범위를 선택하는 Material 3
DateRangePicker
API를 추가했습니다. (I7a6c3, b/267194809) DateRangePicker
API를 통해 기간을 선택할 수 있도록 Material 3 입력 모드 지원을 추가했습니다. (Ifdbc4)- 이제 텍스트 필드 색상을 다음과 같이 맞춤설정할 수 있습니다.
- 포커스와 오류 상태에 따른 입력란과 자리표시자 텍스트 색상.
textColor
매개변수가unfocusedTextColor
로,placeholderColor
가unfocusedPlaceholderColor
로 이름이 변경되었습니다. - 새
errorContainerColor
매개변수와 함께 오류 상태를 기반으로 채워진 텍스트 필드의 컨테이너 색상
- 포커스와 오류 상태에 따른 입력란과 자리표시자 텍스트 색상.
- 노출된 드롭다운 메뉴 텍스트 필드 색상이 새로운 접두사 및 접미사 API를 지원하기 위해 매개변수로 업데이트되었습니다. (I9c8b4, b/254284181, b/264766350)
API 변경사항
- 일부 Slider API 버전을 되돌리고 맞춤 thumb 및 트랙이 포함된 새 실험용 슬라이더에서 다루는 중복 슬라이더 오버로드를 삭제했습니다.
RangeSlider
를 안정적인 것으로 승격했습니다. (Ie8fbd) - 칩의 고도 함수에서
defaultElevation
을elevation
으로 이름을 바꿨습니다. (I0f872) - 다음 Material 3 텍스트 필드 API가 더 이상 실험용이 아닙니다.
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
,outlinedTextFieldPadding
(Ieb5c0, b/261561819) TimePickers
is24Hour
가 시스템 설정을 사용합니다. (I18856)- Scaffold API에서 실험용 주석을 삭제했습니다. (Ibb51e, b/261565765, b/261436953)
버그 수정
- 이제
ModalBottomSheet
기본 도형이 항상SheetDefaults.ExpandedShape
입니다. (I0dfca) - Material 3
DatePicker
및DateRangePicker
의 접근성을 개선했습니다. (I5087e) - 최대 높이 제약 조건이 전파되어 다운될 수 있는 버그를 수정했습니다. (I30d8c)
- 클릭 가능하고 선택 가능한 노출 영역에서 시맨틱 역할을 삭제하고 modifier.semantics를 사용하여 역할을 설정하는 데 이를 사용한 구성요소를 업데이트했습니다. (I793d9)
버전 1.1.0-alpha06
2023년 2월 8일
androidx.compose.material3:material3:1.1.0-alpha06
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
이 출시되었습니다. 버전 1.1.0-alpha06에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 텍스트 필드가 접두사 및 접미사 텍스트를 지원합니다. (Ia8578, b/179884561)
- Material 3 사양에 따라 시간 선택 도구를 표시하는
TimePicker
함수를 추가했습니다. 이 함수는TimePickerState
및 편의 메서드rememberTimePickerState
와 함께 사용됩니다. (I71910) - 이제
DatePicker
에서 날짜 입력이 디스플레이 모드입니다. 날짜 선택 도구와 날짜 입력 모드 간 전환할 수 있는 지원을 추가했습니다. (Ieeff7) RichTextTooltips
용 API를 추가했습니다. (I58ef3)ModalBottomSheet
및ModalBottomSheetDefaults
를 포함하여 Material 3용 모달 하단 시트를 구현했습니다. 향후 시트 구성요소에 사용할 수 있는SheetState
및rememberSheetState
도 도입했습니다. (I0853a, b/244189383)
API 변경사항
- API
showSnackbar
를 수정했습니다. (I195c2, b/261424370) - 지원 칩 및 추천 칩용 API를 수정했습니다. (Ibb67b, b/261424370)
ListItem
,ListItemDefaults
,ListItemColors
API를 비실험용으로 승격했습니다. (I7e7fa, b/261438882)SliderPositions
,SliderDefaults.Thumb
,SliderDefaults.Track
을 안정화 버전으로 승격하고 맞춤 미리보기 이미지와 트랙을 포함하는 비실험용Slider
및RangeSlider
API를 추가했습니다. 이전의Slider
및RangeSlider
API를 지원 중단했습니다. (Ie5ea6, b/261566890)- 개발자가 앵커에 전달하여 길게 누르면 도움말이 표시되어야 한다는 것을 나타낼 수 있도록
Modifier.tooltipAnchor()
를 공개로 설정했습니다.PlainTooltipBox
API가 더 이상TooltipState
를 null 허용으로 만들지 않도록 업데이트하고 기본값을 지정했습니다. (Ie2fb7) ProgressIndicatorDefaults.circularTrackColor
가 일관성을 위해@Composable
로 표시되었습니다. (Id29cc)- 속성 getter
LocalMinimuTouchTargetEnforcement
를 복원하고 지원 중단으로 표시한 후LocalMinimumInteractiveComponentEnforcement
로 리디렉션했습니다. (I60dd5)
버전 1.1.0-alpha05
2023년 1월 26일
androidx.compose.material3:material3:1.1.0-alpha05
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
가 출시되었습니다. 버전 1.1.0-alpha05에 포함된 커밋을 확인하세요.
새로운 기능
DatePickerDialog
및 접근성 지원RangeSlider
에 맞춤 thumb 및 트랙 추가
버전 1.1.0-alpha04
2023년 1월 11일
androidx.compose.material3:material3:1.1.0-alpha04
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
가 출시되었습니다. 버전 1.1.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
- 캘린더 UI를 통해 단일 날짜를 선택하는 초기
DatePicker
API. 아직 API를 변경하는 중입니다. (I722b9) PlainTooltipBox
를 통한 일반 도움말 지원 추가 (I0cdfb)- 검색창 (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
API 변경사항
- Surface에
IsContainer
시맨틱 속성을 추가했습니다. 이 속성은 나중에 노출 영역과 같은 요소의 시맨틱 의미를 기준으로 순회 순서를 결정하는 데에 사용됩니다. (I63379) - 탐색 창 관련 API를 안정적인 것으로 표시합니다. (Iab01e, b/261439597)
- 원형 진행 상태 표시기용 트랙 색상 매개변수와 원형 및 선형 진행률 표시기용 획 한도 매개변수를 추가했습니다. (Ie668c, b/216325962, b/222964817)
- 지원 중단된 숨겨진 함수의 반환 유형 null 허용 여부를 더 추가했습니다. (Ibf7b0)
Modifier.minimumInteractiveComponentSize
를 추가합니다. 이 메서드는 요소가 더 작게 측정되는 경우 터치 상호작용을 구별하기 위해 최소 48.dp의 크기를 예약하는 데 사용할 수 있습니다. (I33f58, b/258495559)- 콘텐츠 슬롯이 있는
AlertDialog
컴포저블에 실험용 API를 추가했습니다. (Iec4a2)
버그 수정
- 진행률 표시기의 진행률이 예상 범위로 올바르게 제한됩니다. (I8a7eb, b/262262727)
알려진 문제
androidx.compose.foundation:1.4.0-alpha03
에서androidx.compose.foundation:1.4.0-alpha04
로 업데이트할 때java.lang.NoSuchFieldError
오류가 발생할 수 있습니다. 이 문제는 여기에서 처음으로 신고되었습니다. 수정사항이 제출되었으며, 다음번 Compose 업데이트에서 사용할 수 있습니다. 이 문제를 해결하려면androidx.compose.material
및androidx.compose.material3
라이브러리를 최신 버전(1.1.0-alpha04)으로 업데이트하거나androidx.compose.foundation
을 1.4.0-alpha03으로 다운그레이드하세요.
버전 1.1.0-alpha03
2022년 12월 7일
androidx.compose.material3:material3:1.1.0-alpha03
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
이 출시되었습니다. 버전 1.1.0-alpha03에 포함된 커밋을 확인하세요.
API 변경사항
consumedWindowInsets()
의 이름을consumeWindowInsets()
로,withConsumedWindowInsets()
의 이름을onConsumedWindowInsetsChanged()
로 바꾸고 수정자를 공개로 변경했습니다. (Ie44e1)- 사용할 아이콘이 있는 텍스트 버튼에 새 기본 콘텐츠 패딩을 추가합니다. (I8f662)
- 탐색 메뉴와 레일에 사용 중지된 색상을 추가했습니다. (Ia7892, b/258867034)
- 상위 스크롤 정보를 쿼리할 수 있는 Modifier API를 추가했습니다. (I2ba9d, b/203141462).
- 동작이 스크롤 이벤트가 될 가능성이 있는 경우 누르기 상호작용이 올바르게 지연되도록
Clickable
을 수정했습니다. Clickables
가Scrollable ViewGroup
내에서 사용될 때 물결 효과가 올바르게 지연되지 않는 문제를 수정했습니다.- 동작이 스크롤 이벤트가 될 가능성이 있는 경우 누르기가 올바르게 지연되도록 창 및 시트를 업데이트했습니다.
종속 항목 업데이트
Compose UI
및Compose Material
은 이제 Lifecycle 2.5.1에 종속됩니다. (I05ab0, b/258038814)
버전 1.1.0-alpha02
2022년 11월 9일
androidx.compose.material3:material3:1.1.0-alpha02
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
가 출시되었습니다. 버전 1.1.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
- 이제
awaitFirstDown
및waitForUpOrCancellation
이 더 나은 유연성을 위해PointerEventPass
를 허용합니다. 또한 스크롤 중에 메뉴를 표시하는ExposedDropdownMenuBox
를 수정했습니다. (I7579a, b/212091796) - material 및 material3 텍스트
TextField
및OutlinedTextField
에minLines
매개변수를 추가했습니다. 이를 통해 구성요소의 최소 높이를 줄 수로 설정할 수 있습니다. (I4af1d) TopAppBarDefaults smallTopAppBarColors
함수를 지원 중단하고 새topAppBarColors
함수로 대체했으며 이 함수는TopAppBar
를 만들 때 사용해야 합니다. (Ie6cb9)BasicText
및BasicTextField
에minLines
매개변수를 추가했습니다. 이를 통해 줄 수 측면에서 이러한 컴포저블의 최소 높이를 설정할 수 있습니다. (I24294, b/122476634)
버그 수정
- Material3
IconButton
및IconToggleBotton
의 콘텐츠를 구성요소의 상태 레이어 도형(예: 원형)으로 자릅니다. (I9da8f) - 노출 영역 전체에 동일한 배경 색상을 적용하고, 투명한 색상 값을 사용하여 기본 색상을 재정의할 수 있도록 Material3 중형 및 대형 상단 앱 바를 업데이트합니다. (I67659, b/249688556, b/250838918)
버전 1.1.0-alpha01
2022년 10월 24일
androidx.compose.material3:material3:1.1.0-alpha01
및 androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
이 출시되었습니다. 버전 1.1.0-alpha01에 포함된 커밋을 확인하세요.
버그 수정
- TextStyle 및 브러시를 사용하여 제목을 적용할 때 상단 앱 바를 수정합니다. (If667e)
버전 1.0
버전 1.0.1
2022년 11월 9일
androidx.compose.material3:material3:1.0.1
및 androidx.compose.material3:material3-window-size-class:1.0.1
이 출시되었습니다. 버전 1.0.1에 포함된 커밋을 확인하세요.
버그 수정
- 노출 영역 전체에 동일한 배경 색상을 적용하고, 투명한 색상 값을 사용하여 기본 색상을 재정의할 수 있도록 Material3 중형 및 대형 상단 앱 바를 업데이트합니다. (I67659, b/249688556, b/250838918)
버전 1.0.0
2022년 10월 24일
androidx.compose.material3:material3:1.0.0
및 androidx.compose.material3:material3-window-size-class:1.0.0
이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.
1.0.0의 주요 기능
Compose Material 3의 첫 번째 안정화 버전입니다.
Material Design 3 테마 설정 및 Material You 동적 색상
Material Design 3 구성요소
- 배지
- 하단 앱 바
- 버튼
- FAB 및 확장 FAB
- 카드
- 체크박스
- 칩
- 대화상자
- 구분선
- 드롭다운 메뉴
- 목록
- 탐색 메뉴
- 탐색 창
- 탐색 레일
- 진행률 표시기
- 라디오 버튼
- 슬라이더
- 스위치
- 탭
- 텍스트 필드
- 상단 앱 바
- 아이콘
- 텍스트
- 노출 영역
- 레이아웃
- 콘텐츠 색상
창 크기 클래스
material3-window-size-class
는 창 크기 클래스를 지원하는 새로운 라이브러리입니다. 크기 조절이 가능한 체계적인 표시 영역 중단점 세트를 통해 크기 조절이 가능한 애플리케이션 레이아웃을 디자인하고 개발 및 테스트할 수 있습니다.calculateWindowSizeClass
을 사용하여 창 크기 클래스 인스턴스를 검색할 수 있습니다. 이 클래스는 더 큰 창 크기에 관한 하단 탐색 대신 탐색 레일을 표시하는 등 UI가 표시되는 방식을 결정하는 데 사용할 수 있습니다. 자세한 내용 및 샘플 사용법은WindowSizeClass
의 API 참조 문서를 확인하세요.자세한 내용은 이 블로그 게시물을 확인하세요.
버전 1.0.0-rc01
2022년 10월 5일
androidx.compose.material3:material3:1.0.0-rc01
및 androidx.compose.material3:material3-window-size-class:1.0.0-rc01
이 출시되었습니다. 버전 1.0.0-rc01에 포함된 커밋을 확인하세요.
API 변경사항
- 텍스트를 지원하기 위한 슬롯 매개변수를 텍스트 필드 API에 추가했습니다. (Iaac0d, b/227146125)
버전 1.0.0-beta03
2022년 9월 21일
androidx.compose.material3:material3:1.0.0-beta03
및 androidx.compose.material3:material3-window-size-class:1.0.0-beta03
이 출시되었습니다. 버전 1.0.0-beta03에 포함된 커밋을 확인하세요.
API 변경사항
- 이제
ExposedDropdownMenuDefaults
가 메뉴 항목의 패딩 값을 노출합니다. (I34ee1) - 이제
ExposedDropdownMenuBoxScope
에는 적절한 a11y 동작을 위해 텍스트 필드에 전달해야 하는Modifier.menuAnchor()
수정자가 있습니다. (I27fa3) - 사용자가 슬라이더를 채우기 위해 미리보기나 트랙을 전달할 수 있도록 현재 Slider API에 두 개의 오버로드된 메서드를 추가합니다. (I21c00)
버그 수정
- On Error Container의 어두운 테마 색상 매핑이 톤 90으로 업데이트되었습니다. (Ic5612)
- 작은 Material 3 상단 앱 바에 투명한 배경을 설정할 수 있도록 수정했습니다. (I645e2, b/245575782)
버전 1.0.0-beta02
2022년 9월 7일
androidx.compose.material3:material3:1.0.0-beta02
및 androidx.compose.material3:material3-window-size-class:1.0.0-beta02
가 출시되었습니다. 버전 1.0.0-beta02에 포함된 커밋을 확인하세요.
API 변경사항
- beta01 버전의 m3 구성요소에 도입된 기본 구성요소 인셋이 더 이상 IME 인셋을 고려하지 않습니다.
- 이제 Material3 Scaffold 구성요소에
contentWindowInsets
매개변수가 있으므로, 콘텐츠 슬롯에서 처리할 인셋의 양을 지정할 수 있습니다. (Icf11a, b/243713323) - 실험용 Material 3
SmallTopAppBar
함수를 지원 중단하고 이에 상응하는TopAppBar
함수를 도입합니다. 새 함수로 사용을 이전하세요. (I74404, b/226918634) - 오버더톱 앱 바 플링 및 맞추기 동작을 제어할 수 있습니다. (I15c81)
- Divider에서 startIndent를 삭제하고 색상을 마지막 매개변수로 이동합니다. (If7be2)
버그 수정
- 대화상자가 표시되면 대화상자라는 단어를 표시하여 TalkBack 사용자에게 자신을 식별하도록 합니다. (I857ef)
버전 1.0.0-beta01
2022년 8월 24일
androidx.compose.material3:material3:1.0.0-beta01
및 androidx.compose.material3:material3-window-size-class:1.0.0-beta01
이 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.
API 참조
사용 가능한 최신 테마 설정, 구성요소, 기타 컴포저블을 보려면 Compose Material 3 API 참조 개요를 확인하세요.
API 변경사항
- Material 3 상단 앱 바가 완전히 접히고 완전히 펼쳐지도록 업데이트했습니다. 또한
TopAppBarDefaults
동작 함수를 컴포저블로 업데이트하고 상단 앱 바 상태 및 애니메이션 사양의 기본값을 제공합니다. (I642b3) - 노출 영역 API와 일치하도록 FAB 구성요소 서명을 업데이트했습니다. (I3afaa)
- 상단 앱 바, 창, 탐색 메뉴, 레일에 대한 인셋 내장 지원을 추가했습니다. 이러한 구성요소는 별도로 또는 Scaffold와 함께 사용할 때 자동으로 개발자를 위한 인셋을 처리합니다. 참고: 이렇게 변경해도 상태 표시줄 아이콘의 자동 처리와 상태 및 탐색 메뉴의 투명도가 추가되지는 않습니다. 더 넓은 화면 환경을 이용하려면 수동으로 계속 진행하세요. (I7e4e6, b/183161866)
- 향후 유연성 및 성능을 향상할 수 있도록 API 노출 영역을 줄이기 위해 구성요소 기본값을 업데이트했습니다. (I31820)
- API 내에서 일관성을 유지하기 위해 칩 및 탐색 창 시트 매개변수의 순서를 변경했습니다. (I45d0b)
- Divider에서
startIndent
를 삭제하고 색상을 마지막 매개변수로 이동했습니다.(If7be2)
버전 1.0.0-alpha16
2022년 8월 10일
androidx.compose.material3:material3:1.0.0-alpha16
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
이 출시되었습니다. 버전 1.0.0-alpha16에 포함된 커밋을 확인하세요.
새로운 기능
- 탐색 창에서 맞춤 너비 지정을 지원합니다. (Ia7f10)
API 변경사항
- API 내에서 일관성을 유지하기 위해 Tab 및 Leading 아이콘 탭 매개변수를 재정렬합니다. (Ie2637)
BadgeDefaults
를 실험용으로 표시했습니다. (I98ef3)- 지원 중단된 탐색 창 함수를 삭제합니다. (I4f2db)
- Material 3의 Slider 매개변수를 재정렬하여 API 내 일관성을 유지합니다. (I0aee7)
NavigationBar
및NavigationRail
매개변수를 재정렬하여 API 내 일관성을 유지합니다. (I51cda)- Material 3의 매개변수를 재정렬하여 API 전체에서 일관성을 유지합니다. (If4ae1)
- Material 3의 Slider 매개변수를 재정렬하여 API 내 일관성을 유지합니다. (I62673)
- 상단 앱 바와 일관되도록 아이콘 매개변수를 작업으로 이름을 바꿨습니다. (Id75be)
- 앵커 정렬이 여전히 유입되기 때문에
Badge
및BadgedBox
를 실험용으로 표시합니다. (I1712e, b/236524516) - 아이콘 버튼 변형의
@ExperimentalMaterial3Api
주석을@OptIn
으로 변경합니다. (I070b5) - 탐색 창의 콘텐츠를 자체 컴포저블로 분리하여 맞춤 너비 지정을 지원합니다. (Ia7f10)
MenuDefaults
및TabDefaults
에서Divider
를 삭제합니다. (I4e33c)
버전 1.0.0-alpha15
2022년 7월 27일
androidx.compose.material3:material3:1.0.0-alpha15
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
가 출시되었습니다. 버전 1.0.0-alpha15에 포함된 커밋을 확인하세요.
새로운 기능
- 상단 앱 바를 바 자체에서 드래그하도록 허용합니다. (I65c00, b/205873416)
API 변경사항
FilterChip
및ElevatedFilterChip
API를 업데이트하여selectedIcon
슬롯을 삭제하고, 선택된 상태를 표시하는leadingIcon
을 재사용합니다. (Ie5dc2)- 스크림 및 윤곽선 변형 색상 역할을 추가합니다. (Id6d54)
- 컴포저블 기본값의 이름 지정 규칙을 수정했습니다. (I62b27)
ListItemDefaults
및ListItemColors
를 실험용으로 표시합니다. (I1f3ec)- 상태 속성의 의미를 더 잘 반영하도록 상단 앱 바 API를 변경했습니다. 또한 상단 앱 바 API를 실험용으로 표시합니다. (Ic0ad8)
- 검색 가능성을 높이기 위해 이제 텍스트 선택 색상을
TextFieldColors
에 추가했습니다. (Iba1b8) - 아이콘이 포함된 버튼과 함께 사용할
ButtonDefault.ButtonWithIconContentPadding
을 추가합니다. (I2bf9c) - 향후 API 변경에서 더 유연하게 적용될 수 있도록 텍스트 필드를 실험용으로 표시했습니다. (I127b5)
Checkbox
함수에서@ExperimentalMaterial3Api
주석을 삭제했습니다. (I5eefc)RadioButton
함수에서@ExperimentalMaterial3Api
주석을 삭제했습니다. (I17e2a)- 비대화형 카드에서
@ExperimentalMaterial3Api
주석을 삭제했습니다. (I9bd49) - 색상, 도형 등을 포함하도록 다양한 구성요소의 기본 객체를 업데이트합니다. (I96e11)
버그 수정
- 카탈로그 앱에서 사용자 혼동을 방지하기 위해 입력 칩 샘플에서 작동하지 않는 후행 아이콘을 삭제했습니다. (I9846a)
버전 1.0.0-alpha14
2022년 6월 29일
androidx.compose.material3:material3:1.0.0-alpha14
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
가 출시되었습니다. 버전 1.0.0-alpha14에 포함된 커밋을 확인하세요.
새로운 기능
- M3 목록 구현을 추가했습니다. 샘플 사용에 관한 문서를 참고하세요. (Id7a20)
API 변경사항
- 매개변수 이름을 여러 값에서
RangeSlider
의 값으로 변경합니다. (I3b79a) - Material Design 사양에 따라 선택 가능한 상태를 지원하기 위해 API의
InputChip
구현이 변경되었습니다. 선택한 사용 중지 상태를 위해FilterChip
색상에 지원이 추가되었습니다. (I55244, b/235792432) BottomAppBar
기본 FAB를 추가합니다. (Ida4c8)ColorScheme.surfaceColorAtElevation
이 추가되었습니다. (Id41af)- Compose 라이브러리의 인터페이스는 이제 jdk8 기본 인터페이스 메서드를 사용하여 빌드됩니다. (I5bcf1)
WindowWidthSizeClass
및WindowHeightSizeClass
가 이제 Comparable을 구현하므로 연산자 (<, <=, >=, >) 및 기타 API를 사용하여 비교 가능합니다. (I747d0)
버그 수정
- 더 의미 있는 콘텐츠 설명을 제공하기 위해 배지 샘플을 업데이트합니다. (I10b9d)
- Material 3 카탈로그의 테마 선택 도구에 시스템 글꼴 크기를 사용하기 위한 옵션을 추가합니다. (I10605)
- 배지 및 확실하지 않은 진행 상태 표시기의 샘플 코드를 추가합니다. (I8fbe0)
버전 1.0.0-alpha13
2022년 6월 1일
androidx.compose.material3:material3:1.0.0-alpha13
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
이 출시되었습니다. 버전 1.0.0-alpha13에 포함된 커밋을 확인하세요.
API 변경사항
- 구성 변경 시 상단 앱 바 위치를 유지하도록 지원합니다. (I10459, b/216160958)
버전 1.0.0-alpha12
2022년 5월 18일
androidx.compose.material3:material3:1.0.0-alpha12
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
가 출시되었습니다. 버전 1.0.0-alpha12에 포함된 커밋을 확인하세요.
버그 수정
- 슬라이더 상위 요소의 너비가 이제 0이 될 수 있습니다. (b/231707291)
버전 1.0.0-alpha11
2022년 5월 11일
androidx.compose.material3:material3:1.0.0-alpha11
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
이 출시되었습니다. 버전 1.0.0-alpha11에 포함된 커밋을 확인하세요.
새로운 기능
- Material 3에
RangeSlider
를 추가했습니다. (I18e38) - Material 3
AssistChip
및InputChip
지원을 추가합니다. (I0d25a) - Material 3
FilterChip
및SuggestionChip
지원을 추가합니다. (I9fdf3)
API 변경사항
OutlinedTextField
의 테두리 획을 그리는TextFieldDefaults.BorderStroke
컴포저블의 이름이TextFieldDefaults.BorderBox
로 바뀌었습니다. 변경되었습니다. (I5f295)- m3 시각적 변경사항을 전환했습니다. (Iab30e)
- 표준 아이콘 버튼에 색상을 전달하도록 허용합니다. (Ia2445)
버그 수정
- 내부 패딩이 사용되었는지 확인하기 위하여 material3/Scaffold에 린트 검사를 추가합니다. (I72293, b/226951418)
버전 1.0.0-alpha10
2022년 4월 20일
androidx.compose.material3:material3:1.0.0-alpha10
및 androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
이 출시되었습니다. 버전 1.0.0-alpha10에 포함된 커밋을 확인하세요.
새로운 기능
material3-window-size-class
는 창 크기 클래스를 지원하는 새로운 라이브러리입니다. 크기 조절이 가능한 체계적인 표시 영역 중단점 세트를 통해 크기 조절이 가능한 애플리케이션 레이아웃을 디자인하고 개발 및 테스트할 수 있습니다.calculateWindowSizeClass
을 사용하여 창 크기 클래스 인스턴스를 검색할 수 있습니다. 이 클래스는 더 큰 창 크기에 관한 하단 탐색 대신 탐색 레일을 표시하는 등 UI가 표시되는 방식을 결정하는 데 사용할 수 있습니다. 자세한 내용 및 샘플 사용법은WindowSizeClass
의 API 참조 문서를 확인하세요. 창 크기 클래스 정의에 관한 자세한 내용은 다양한 화면 크기 지원에 관한 공개 가이드를 참고하세요.
API 변경사항
BottomAppBar
의 기본 FAB 고도를 추가하고 FAB를 사용하여BottomAppBar
의 후행 람다를 추가합니다. (I92c47)- Material 3
FilledIconButton
,FilledTonalIconButton
,OutlinedIconButton
을 추가합니다. (Ib2bda) - 선택적 작업과 닫기 작업의 색상 값을 수락하도록 Material 3 Snackbar API를 업데이트했습니다. (Ibe4b4)
PointerInputChange
에서 부분 소비(아래쪽 OR 위치)를 지원 중단했습니다.consume()
을 사용하여 변경사항을 완전히 사용할 수 있습니다.isConsumed
를 사용하여 다른 사용자가 이전에 변경사항을 사용했는지 확인할 수 있습니다.- 이제
PointerInputChange::copy()
가 항상 얕은 복사본을 만듭니다. 즉, 사본 중 하나가 소비되면PointerInputChange
의 사본이 사용됩니다. 결합되지 않은PointerInputChange
를 만들려면 생성자를 대신 사용하세요. 사용하세요. (Ie6be4, b/225669674) CardColors
인터페이스를 통해 컨테이너 및 콘텐츠 색상을 수신하고 클릭 가능한 카드의 사용 중지 상태를 지원하도록 Card API를 변경했습니다. (I927df)- 다른 구성요소와의 일관성을 향상하도록 Material 3 텍스트 필드의 매개변수
backgroundColor
의 이름을containerColor
로 변경했습니다. (I6fbd9)
버그 수정
- 표준
IconButton
을 Material 3 사양에 맞게 업데이트합니다. (I09eab) - Material 3 스캐폴드의 상단 표시줄 높이를 콘텐츠에 전달된 패딩으로 이동하여 콘텐츠가 상단 앱 바 아래로 렌더링되도록 합니다.
PaddingValues
가 무시되면 상단 표시줄로 콘텐츠가 가려질 수 있습니다. (I83cbc, b/217776202)
버전 1.0.0-alpha09
2022년 4월 6일
androidx.compose.material3:material3:1.0.0-alpha09
가 출시되었습니다. 버전 1.0.0-alpha09에 포함된 커밋을 확인하세요.
새로운 기능
- Material 3 Switch API를 추가했습니다. (I2c3ad)
API 변경사항
- 텍스트 필드가 있는 드롭다운 메뉴('노출된 드롭다운 메뉴' 또는 '콤보 상자') 지원을 추가했습니다. (I1b832)
- MaterialTheme 및 Shape 하위 시스템에 도형 매개변수를 추가했습니다. (I37426)
- 각 상태 사이에 애니메이션을 사용하여 FAB를 펼치거나 접을지 제어할 수 있도록
ExtendedFloatingActionButton
에 확장 매개변수를 추가했습니다. 아이콘이 없는 ExtendedFAB의 후행 텍스트가 있는 확장 FAB용 확장 FAB 오버로드를 추가했습니다. (Iba7f1)
버전 1.0.0-alpha08
2022년 3월 23일
androidx.compose.material3:material3:1.0.0-alpha08
이 출시되었습니다. 버전 1.0.0-alpha08에 포함된 커밋을 확인하세요.
새로운 기능
- Material 3 텍스트 필드 지원을 추가했습니다. (I795cc, b/199377790)
API 변경사항
버그 수정
- Material3 버튼에서 수정하여 MaterialTheme에서 기본 텍스트 스타일 값을 읽습니다. (Ie62fc)
버전 1.0.0-alpha07
2022년 3월 9일
androidx.compose.material3:material3:1.0.0-alpha07
이 출시되었습니다. 버전 1.0.0-alpha07에 포함된 커밋을 확인하세요.
API 변경사항
- 클릭 가능한 노출 영역의 오버로드된 함수를 다시 가져오고, 선택 가능하고 전환 가능한 노출 영역을 지원하는 함수를 추가하는 Material 3 Surface API를 업데이트했습니다. (I4bf18)
- 이제
LazyVerticalGrid
및LazyHorizontalGrid
가 안정적입니다. (I307c0) LazyVerticalGrid/LazyHorizontalGrid
및 모든 관련 API를 .grid 하위 패키지로 이동했습니다. 가져오기를 androidx.compose.foundation.lazy에서 androidx.compose.foundation.lazy.grid로 업데이트하세요(I2d446).WindowInsetsControllerCompat
의 뷰에만 의존하는 이전 변경사항을 되돌렸으며 일부 창 플래그를 관리하는 데 필요한 창이 다시 필요합니다. 적절한 창이 사용되도록(예: 뷰가 대화상자에 있는 경우)ViewCompat.getWindowInsetsController
를 지원 중단하고WindowCompat.getInsetsController
로 대체했습니다. (I660ae, b/219572936)- 교차 축 크기를 정의하는 새
LazyVerticalGrid
API를 추가했습니다. (I17723)
버그 수정
- Surface API의 변경사항을 따르도록 Card API를 업데이트했습니다. (I3c8b9)
버전 1.0.0-alpha06
2022년 2월 23일
androidx.compose.material3:material3:1.0.0-alpha06
이 출시되었습니다. 버전 1.0.0-alpha06에 포함된 커밋을 확인하세요.
API 변경사항
- 창 내부의 단일 대상을 나타내는
NavigationDrawerItem
이 추가되었습니다(Ic396f, b/218286829). PermanentNavigationDrawer
및DismissibleNavigationDrawer
가 실험용 API로 추가되었습니다. 이 API는 대형 화면 기기에 적합한 창입니다. (I5f8ab, b/218286829)- Material 3 하단 앱 바 지원을 추가했습니다(Ic432a).
NavigationDrawer
에서ModalNavigationDrawer
로 이름이 변경되었습니다. (I1807d, b/218286829)- Material 3 Slider 클래스 및 토큰을 추가했습니다. (I1ccee)
- 탭 구현을 추가했습니다. 샘플 사용에 관한 문서를 참고하세요(Ie0146).
버그 수정
TalkBack
스크린 리더의 순차적 탐색에서 빈 상단 앱 바 제목이 선택되는 문제가 해결되었습니다. (Id4690)FloatingActionButtonDefaults
에IconSize
를 추가했습니다. (Ia71cf)- 긴 텍스트가
LazyColumn
과 함께 추가될 때AlertDialog
버튼이 숨겨지는 버그를 수정했습니다. (Ib2cc9, b/216663029)
버전 1.0.0-alpha05
2022년 2월 9일
androidx.compose.material3:material3:1.0.0-alpha05
가 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.
새로운 기능
Material Design 3 구성요소를 추가했습니다.
- 드롭다운 메뉴
- 카드
API 변경사항
- onClick 콜백을 사용하는
Surface
함수가 지원 중단되었습니다. 클릭 가능한 노출 영역은InteractionSource
및Modifier.clickable()
로 만들어야 합니다. (I211c6) - FAB에 관해 누르고 포커스가 설정된 고도 지원을 추가했습니다. (Ibb584)
- 다양한 상태에서 모양을 제어할 수 있는 InteractionSource를 받도록
Surface
API를 변경했습니다. (Iafbc8)
버그 수정
- 누락된 3차 색상을 동적 색 구성표에 추가했습니다. (I456c4, b/214588434)
버전 1.0.0-alpha04
2022년 1월 26일
androidx.compose.material3:material3:1.0.0-alpha04
가 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.
API 변경사항
- 복잡한 로직 없이 기존 메서드의 오버로드인 메서드에
NonRestartableComposable
을 추가했습니다. 이렇게 하면 호출된 내부 함수에서 반복되는 매개변수 전체를 대상으로 하는 컴파일러 생성 메모이제이션 검사(동일)가 줄어듭니다. (I90490) - Material 3 구분선을 추가했습니다. (Ica5fc)
- 실험용 API 주석으로 Checkbox와 RadioButton을 표시합니다. (Ie44bb)
- Material 3 진행률 표시기 지원을 추가했습니다. (Iff232, b/205023841)
버그 수정
- 사용 중지된
TextButton's
컨테이너 색상을 투명하게 업데이트합니다. (I6b248, b/213339737)
버전 1.0.0-alpha03
2022년 1월 12일
androidx.compose.material3:material3:1.0.0-alpha03
이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.
버그 수정
- Material 3의
MaterialTheme
에LocalIndication
을 추가했습니다. (I7ce4e) - 체크박스에 적용되는 모서리 반지름을 수정했습니다. (I38b03, b/175198975, b/202309440)
종속 항목 업데이트
- 이제 Kotlin
1.6.10
에 종속됩니다.
버전 1.0.0-alpha02
2021년 12월 1일
androidx.compose.material3:material3:1.0.0-alpha02
가 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- 체크박스 및 라디오 버튼 지원이 추가됩니다.
- Kotlin
1.6.0
과 호환되도록 업데이트했습니다.
API 변경사항
- Material 3의 스캐폴드에서 창이 삭제됩니다. (I04f51)
- Material 3
Checkbox
지원이 추가됩니다. (Id5542) - Material 3
RadioButton
지원이 추가됩니다. (I20334)
버그 수정
IconButton
물결 효과 반경이 40dp에서 20dp로 줄어듭니다. (I68bbe, b/206674345)Text
변경사항의 빠른 문자열 경로가compose.material
에서 포팅됩니다. (I30b03)- 하드코딩된 버튼을 항상 사용 설정하도록 수정했습니다. (Iea832, b/205335456)
버전 1.0.0-alpha01
2021년 10월 27일
androidx.compose.material3:material3:1.0.0-alpha01
이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
Material Design 3 테마 설정 및 Material You 동적 색상
Material Design 3 구성요소
자세한 내용은 Compose의 Material 테마 설정 가이드에서 Material Design 3 및 Material You 섹션을 참고하세요.