Compose Material 3

차세대 Material Design인 Material Design 3 구성요소로 Jetpack Compose UI를 빌드합니다. Material 3은 업데이트된 테마 설정 및 구성요소, Material You 맞춤설정 기능(동적 색상 등)을 포함하며 새로운 Android 12의 시각적 스타일 및 시스템 UI와 일관되도록 설계되었습니다.
최근 업데이트 안정화 버전 출시 후보 버전 베타 버전 알파 버전
2024년 12월 12일 1.3.1 - - 1.4.0-alpha05

구조

Compose는 androidx 내 Maven 그룹 ID 7개의 조합입니다. 각 그룹에는 타겟팅된 기능의 하위 집합이 있으며, 각 기능은 자체적인 출시 노트를 포함하고 있습니다.

다음 표에서는 그룹에 관한 설명과 각 출시 노트 조합의 링크를 제시합니다.

그룹설명
compose.animationJetpack Compose 애플리케이션에서 애니메이션을 빌드하여 풍부한 사용자 경험을 제공합니다.
compose.compilerKotlin 컴파일러 플러그인으로 최적화를 사용 설정하고 @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.runtimeCompose의 프로그래밍 모델과 상태 관리를 위한 기본 구성요소이며, Compose 컴파일러 플러그인이 타겟팅하는 핵심 런타임입니다.
compose.ui레이아웃, 그리기, 입력 등 기기와 상호작용할 때 필요한 Compose UI의 기본적인 구성요소입니다.

종속 항목 선언

Compose의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용을 알아보려면 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

Groovy

dependencies {
    implementation "androidx.compose.material3:material3:1.3.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.3.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.

새로운 문제 제출하기

자세한 내용은 Issue Tracker 문서를 참고하세요.

Compose Material3 공통 버전 1.0

버전 1.0.0-alpha01

2024년 4월 17일

androidx.compose.material3:material3-common:1.0.0-alpha01, androidx.compose.material3:material3-common-android:1.0.0-alpha01androidx.compose.material3:material3-common-desktop:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에는 이 커밋이 포함되어 있습니다.

새로운 기능

Material Design 구성요소를 빌드하는 데 사용할 수 있는 테마 없는 구성요소:

Compose Material3 적응형 탐색 모음 버전 1.0

버전 1.0.0-alpha07

2024년 5월 1일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07이 출시되었습니다. 버전 1.0.0-alpha07에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • 탐색 모음 API를 비실험용으로 설정합니다. (If62af)

버그 수정

  • 기본적으로 콘텐츠의 인셋을 사용합니다. (50266df)

버전 1.0.0-alpha06

2024년 4월 17일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06이 출시되었습니다. 버전 1.0.0-alpha06에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • containerColorcontentColorNavigationSuiteScaffoldDefaults에 추가합니다. (I64e3a, b/331993720)
  • NavigationSuiteDefaultsitemColors 함수를 추가합니다. (Idf719, b/328480012)
  • NavigationSuiteScope를 봉인합니다. (Iefa57)

버전 1.0.0-alpha05

2024년 3월 6일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05이 출시되었습니다. 버전 1.0.0-alpha05에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • NavigationSuiteItemColors 생성자를 공개로 만듭니다. (Ica83a, b/324886877)

버전 1.0.0-alpha04

2024년 2월 21일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04이 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.

종속 항목 업데이트

  • Material3 적응형 종속 항목을 새 모듈 경로로 업데이트합니다. (Ibc421)
  • 창 크기 클래스의 Window Manager 버전을 사용하도록 이전합니다. (I3794d)

버전 1.0.0-alpha03

2024년 2월 7일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.

API 변경사항

  • 패키지 이름을 navigation-suite에서 navigationsuite로 업데이트했습니다. (I7eff7)
  • API에 MutableInteractionSource를 노출하는 Material3 구성요소가 업데이트되어 이제 기본값이 null인 null 허용 MutableInteractionSource를 노출합니다. 여기서는 의미론적 변경사항이 없습니다. null을 전달하면 MutableInteractionSource를 호이스팅하지 않겠다는 의미이며 필요한 경우 구성원 내에서 생성됩니다. null로 변경하면 일부 구성요소는 MutableInteractionSource를 할당하지 않을 수 있고 다른 구성요소는 필요할 때만 인스턴스를 지연 생성할 수 있으므로 이러한 구성요소의 성능이 개선됩니다. 이러한 구성요소에 전달하는 MutableInteractionSource를 사용하지 않는 경우 대신 null을 전달하는 것이 좋습니다. 자체 구성요소에서도 유사한 변경사항을 적용하는 것이 좋습니다. (I41abb, b/298048146)

버전 1.0.0-alpha02

2023년 12월 13일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02이 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.

새로운 기능

버그 수정

  • 루트 노출 영역에 modifier.fillMaxSize가 있는 경우 전체 화면을 채우는 탐색 구성요소를 수정합니다. (c9cf250, b/312664933)

버전 1.0.0-alpha01

2023년 11월 15일

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

Compose Material3 적응형 버전 1.0

버전 1.0.0-alpha06

2024년 2월 7일

androidx.compose.material3:material3-adaptive:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06이 출시되었습니다. 버전 1.0.0-alpha06에 포함된 커밋을 확인하세요.

새로운 기능

  • ThreePaneScaffoldNavigator 뒤로 탐색에 대한 동작 옵션을 추가했습니다. (I858aa)
  • 탐색 기록에 선택적 대상 콘텐츠를 추가했습니다. (Ibd7e6)

버전 1.0.0-alpha05

2024년 1월 24일

androidx.compose.material3:material3-adaptive:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05이 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.

새로운 기능

  • 스캐폴드 탐색 및 값 계산에서 기록 인식을 지원합니다. (I71d46)

버전 1.0.0-alpha04

2024년 1월 10일

androidx.compose.material3:material3-adaptive:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04이 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.

새로운 기능

  • 창 스캐폴드에 전체 화면 지원을 추가했습니다. (I1b462)

API 변경사항

  • Posture의 힌지 경계 속성을 힌지 정보 목록으로 이동했습니다. (I24f90)

버그 수정

  • AnimatedPane가 재구성되지 않는 문제를 수정했습니다. (c3f573d)

버전 1.0.0-alpha03

2023년 12월 13일

androidx.compose.material3:material3-adaptive:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.

API 변경사항

  • 스캐폴드 역할을 ThreePaneScaffoldRole의 별칭으로 변경합니다. (I65bd1)
  • 스캐폴드 역할의 기본 클래스 만들기 (I4784d)
  • AnimatedPane의 콘텐츠에서 불필요한 매개변수를 삭제했습니다. (Ibc73b)
  • collectWindowSizeAsState의 이름을 바꾸고 대신 원시 값을 반환합니다. (I480f4)

버전 1.0.0-alpha02

2023년 11월 29일

androidx.compose.material3:material3-adaptive:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02이 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • 탐색 API를 적응형 스캐폴드 API에서 분할합니다. (Ic4045)
  • GutterSize 클래스를 삭제합니다. (I785b3)

버그 수정

  • AnimatedPane가 사용되지 않을 때 창이 전환되지 않는 문제를 수정했습니다. (d88f181)

버전 1.0.0-alpha01

2023년 11월 15일

androidx.compose.material3:material3-adaptive:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

Material3 적응형 조건 API:

Material3 적응형 창 스캐폴드 지시문 API:

Material3 적응형 창 스캐폴드 API:

Compose Material3 버전 1.4

버전 1.4.0-alpha05

2024년 12월 12일

androidx.compose.material3:material3-*:1.4.0-alpha05이 출시되었습니다. 버전 1.4.0-alpha05에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • 가독성을 높이기 위해 열거형의 WideNavigationRailState.current/target 값에서 유형을 바꿉니다. (I2d6ab)
  • SplitButton 바이너리 호환성을 위해 Shape API를 데이터 클래스에서 클래스로 변경했습니다. (I53812)
  • 사용자가 도움말 텍스트 외부를 클릭할 때 발생하는 작업을 제작자가 결정할 수 있도록 onDismissRequest 매개변수가 있는 도움말 텍스트 API를 추가했습니다. 이 새 매개변수가 포함되지 않은 이전 API가 지원 중단되었습니다. (I99aef)
  • opticalCentering의 이름을 horizontalCenterOptically로 변경합니다. 수정자를 내부용으로 만듭니다. 패딩 매개변수를 최대 시작 및 종료 오프셋으로 대체합니다. (I0b904)
  • WideNavigationRailState를 현재/타겟 값을 갖도록 변경하고 enum을 삭제하여 불리언을 사용합니다. (Idfa29, b/356039090)
  • NavigationBarItemComponentOverride를 추가합니다. (I3a06a)

버그 수정

  • 콘텐츠가 끝까지 스크롤될 때 색상을 안정적으로 변경하도록 상단 및 하단 앱 바 동작을 수정합니다. (Idc4e8, b/293665988)
  • 이제 상단 및 하단 앱 바의 스크롤 동작 함수가 재구성 전반에서 더 나은 성능을 발휘하도록 기억된 동작을 반환합니다. (I0fdbe, b/207957336)
  • 이제 수정자 매개변수가 이전이 아닌 드래그 동작 및 시맨틱과 같은 내부 수정자 뒤에 적용됩니다. 이는 수정자가 적용되는 순서에 영향을 미칩니다. (I8d83f)
  • 펼쳐진 하단 시트는 크기가 변경되어도 펼쳐진 상태로 유지됩니다. (I2870b, b/324934884)
  • 창 속성의 상태 및 탐색 메뉴 플래그를 올바르게 라우팅합니다. (Ie674d, b/362539765)
  • 문서에 설명된 대로 수정자 매개변수를 스캐폴드 루트로 이동합니다. 이렇게 하면 구현이 M2와 일치합니다. (I0235e, b/372311595)

외부 기여

  • 공통화된 DatePickerDialog 함수 (I7dced)

버전 1.4.0-alpha04

2024년 11월 13일

androidx.compose.material3:material3-*:1.4.0-alpha04이 출시되었습니다. 버전 1.4.0-alpha04에는 이 커밋이 포함되어 있습니다.

동작 변경사항

  • aosp/3212478에서 도입된 색상 변경사항을 iconButtonColors, iconToggleButtonColors, outlinedIconButtonColors, outlinedIconToggleButtonColors, outlinedIconToggleButtonBorder로 되돌립니다. 반환되는 고대비 색상을 강조하기 위해 이제 되돌린 동작을 iconButtonVibrantColors 등의 새 함수 집합으로 이동했습니다. (Iffd8d)

새로운 기능

  • VerticalDragHandle 구성요소 도입 (I6c770)

API 변경사항

  • DismissibleModalWideNavigationRailDefaults의 이름을 ModalWideNavigationRailDefaults로 바꿉니다. (I8e877)
  • NavigationBarComponentOverrides를 추가합니다. (I8a3f3)
  • NavigationRailComponentOverride를 추가합니다. (I83e13)
  • 레일 접기/펼치기를 처리하는 WideNavigationRailState를 도입하고 ModalWideNavigationRail를 닫을 수 있도록 허용하고 DismissibleModalWideNavigationRail를 삭제합니다. (I88568)
  • 전환 버튼 기본값에 xSmall, medium, large, xLarge 크기 기본값을 추가합니다. (Ie95d1)
  • 버튼 기본값에 xSmall, medium, large, xLarge 크기 기본값을 추가합니다. (If8b6d)

버그 수정

  • 필터 칩 후행 아이콘 색상이 사양에 따라 기본에서 OnSurfaceContainer로 업데이트되었습니다. 모든 칩 윤곽선 색상이 사양에 따라 윤곽선에서 윤곽선 변형으로 업데이트되었습니다. (I68bd4)

버전 1.4.0-alpha03

2024년 10월 30일

androidx.compose.material3:material3-*:1.4.0-alpha03이 출시되었습니다. 버전 1.4.0-alpha03에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • 밀도가 있는 SheetState 생성자가 위치 및 속도 기준점으로 대체되어 지원 중단되었습니다. (Ifd16e)
  • 업데이트된 위치 지정 로직이 포함된 rememberTooltipPositionProvider를 추가했습니다. rememberPlainTooltipPositionProviderrememberRichTooltipPositionProvider가 지원 중단되었습니다. (Ie66e2)
  • 추가 ModalBottomSheetProperties를 사용하면 상태 및 탐색 메뉴 색상을 맞춤설정할 수 있습니다. 기본적으로 이러한 색상은 시스템 어두운 테마 상태 대신 콘텐츠 색상을 기반으로 업데이트됩니다. (Ib874e, b/362539765)
  • 날짜 선택 도구의 입력 환경이 개선되었습니다. 입력 모드에서는 즉시 텍스트를 입력할 수 있도록 날짜 텍스트 필드에 포커스가 설정됩니다. 이 변경사항은 DatePickerDateRangePickerrequestFocus 매개변수를 추가합니다. false를 전달하여 포커스를 방지할 수 있습니다. (I12d09, b/286399710, b/340102743)
  • 도형 기본값을 Shape 객체에 캐싱합니다. 전환 버튼의 도형 기본값을 @Composable로 설정합니다. 변형이 동일한 토큰 파일을 가리키므로 도형을 하나의 도형 기본값으로 접습니다. (Iaa014)

버그 수정

  • contentPadding가 변경될 때마다 항상 본문 콘텐츠를 재구성하지 않도록 Scaffold contentPadding 동작을 최적화합니다. (I8c8e2, b/373904168)
  • TextFieldLabelScope progress의 이름이 labelMinimizedProgress로 변경되었습니다.
  • TextFieldLabelPosition Default의 이름이 Attached로 변경되었습니다. 인터페이스 멤버가 삭제되었습니다. (If75c6)
  • 입력 모드의 DatePicker에서 유효성 검사 오류로 인해 구성요소의 높이가 변경될 수 있는 문제를 수정했습니다. (I2e229, b/280462363)
  • 컨트롤 키를 누르면 Material Slider의 값이 변경되도록 합니다. (I1c442)

버전 1.4.0-alpha02

2024년 10월 16일

androidx.compose.material3:material3-*:1.4.0-alpha02이 출시되었습니다. 버전 1.4.0-alpha02에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • DatePickerState 또는 DateRangePickerState를 통해 언어를 직접 설정할 때 DatePickerDateRangePicker 전체에서 일관된 언어 사용을 보장하도록 날짜 선택 도구를 업데이트했습니다. 언어를 상태에 직접 설정하는 경우 기본 텍스트는 기본 플랫폼 언어에 따라 계속 적용되므로 제목 및 광고 제목 텍스트가 적절하게 현지화되도록 해야 합니다. (I37073, b/326490763, b/321657276)
  • 이제 SheetState.isAnimationRunning가 노출됩니다. (I9a3d7)
  • 이제 DatePickerColors가 테마의 서체 텍스트 스타일에 정의된 충돌하는 색상보다 올바르게 우선 적용됩니다. 또한 이 업데이트는 날짜 선택 도구 함수에서 color 매개변수의 위치를 조정하고 헤더 및 제목 텍스트 색상을 맞춤설정하기 위한 contentColor 매개변수를 도입합니다. (I30d03, b/347031394)
  • SplitButton의 이름을 SplitButtonLayout로 바꾸고 SplitButton 색상 변형 API를 삭제합니다. 변형은 SplitButtonDefaults에서 제공하는 버튼 변형을 재사용하여 실행됩니다. (I44c36)
  • 이제 ModalBottomSheetsheetGestureEnabled 매개변수가 있습니다. (I856cb, b/288211587)
  • standardMotionSchemeexpressiveMotionScheme의 이름을 표준 및 표현식으로 변경했습니다. 이제 MotionScheme.standard()MotionScheme.expressive()를 호출하여 MotionScheme 컴패니언 객체를 통해 두 함수에 모두 액세스할 수 있습니다. (Iceccf)
  • 일반 도움말과 상세 도움말에 maxWidth 매개변수를 추가했습니다. 기본값은 일반 도움말의 경우 200dp, 리치 도움말의 경우 320dp의 디자인 사양입니다. (I30ce9)

버그 수정

  • 이제 DatePickerDateRangePicker는 상태의 displayedMonthMillis를 통해 설정될 때 표시된 월을 올바르게 업데이트합니다. (If9e47, b/333414302)
  • 이제 ModalBottomSheet 콘텐츠가 상태 표시줄에서 벗어납니다. (I5114c, b/321877275, b/336962418, b/342093067)
  • [하단 시트] IME 키보드가 먼저 닫히도록 콜백 우선순위를 PRIORITY_DEFAULT로 다시 변경합니다. (I447fb)
  • 선택 가능한 최소 연도가 미래 연도로 설정된 경우 DatePickerDateRangePicker의 비정상 종료를 수정합니다. (I78656, b/319395747)
  • 업데이트된 SelectableDates 인스턴스가 적용될 때 UI를 업데이트하는 날짜 선택 도구 문제를 수정했습니다. (Iad59a, b/290135807, b/339898760)

버전 1.4.0-alpha01

2024년 10월 2일

androidx.compose.material3:material3-*:1.4.0-alpha01이 출시되었습니다. 버전 1.4.0-alpha01에는 이 커밋이 포함되어 있습니다.

동작 변경사항

  • 라이브러리가 더 이상 material-icons-core에 종속 항목을 추가하지 않으므로 프로젝트에서 이를 사용하는 경우 build.gradle[.kts] 파일에 종속 항목을 명시적으로 추가해야 합니다. (I735ff, b/349894318)
  • 사용성, 색상 대비, 시스템 내 일관성을 개선하기 위해 NavigationBarItemNavigationRailItem의 활성 라벨 색상이 onSurface에서 secondary로 변경되었습니다 (Ibc297). 이전 동작으로 되돌리려면 기본 색상을 복사하고 selectedTextColorMaterialTheme.colorScheme.onSurface로 변경하세요.
  • 이제 Material 3 구성요소에서 새로운 MotionScheme를 사용하여 모션을 정의합니다. (Ie0f93)
  • 원형 진행률 표시기의 확실하지 않은 모션 변경 (I3c07e)
  • 색상 대비를 개선하기 위해 OutlinedIconButtonColorsOutlinedIconToggleButtonColors를 업데이트합니다. (I2743d)
  • FilledIconToggleButtonColorsFilledTonalIconToggleButtonColors의 컨테이너 및 콘텐츠 색상을 업데이트했습니다. (Ic5d0f)
  • OutlinedButton 테두리 색상을 outline에서 outlineVariant로 업데이트했습니다. (057f00)

API 변경사항

  • reverseLayout로 설정된 콘텐츠를 더 효과적으로 지원하기 위해 TopAppBarenterAlwaysScrollBehavior 함수에 선택적 reverseLayout 매개변수를 추가했습니다. (I4e0e5)
  • 이제 SegmentedButtoncontentPadding 인수를 지원합니다. (I5ad91, b/358414376)
  • PullToRefreshState에 더 이상 isAnimating의 기본 구현이 없습니다. (I6a593)
  • TextFieldState를 사용하는 Material TextFieldOutlinedTextField의 새 오버로드가 추가되었습니다. TextFieldDecorator와 호환되는 장식 상자 API를 추가했습니다. (If13a1)
  • 텍스트 필드의 labelPosition를 제어하는 매개변수를 추가했습니다. alwaysMinimize를 사용하면 필드에 포커스가 없을 때도 텍스트 필드에 라벨과 자리표시자를 동시에 표시하는 UI 패턴을 사용할 수 있습니다. (I1ef2c)
  • 비밀번호 입력란에 Material SecureTextFieldOutlinedSecureTextField를 추가했습니다. (I7e22d)
  • 애니메이션 진행률을 쿼리하도록 텍스트 필드 라벨에 범위를 추가했습니다. (If5ec8)
  • 도움말에 MotionEvent.CLASSIFICATION_DEEP_PRESS 지원을 추가합니다. (I62e6a)
  • 이제 TimePickerStateisAfternoon가 인터페이스에서 var가 아닌 확장 val이 되었으며 이름이 isPm로 바뀝습니다. (I89a97)
  • 강조된 글꼴 크기를 지원하도록 서체 클래스를 업데이트합니다. (Ifa13c)
  • ModalWideNavigationRail API를 추가하고 ModalExpandedNavigationRail API의 이름을 DismissibleModalWideNavigationRail로 변경했습니다. (Ic9118)
  • screenOffset를 자동 계산하고 @Composable가 필요하지 않도록 FloatingAppBarScrollBehavior를 업데이트했습니다. (Idf349)
  • 기본값 객체의 이름 지정을 수정하도록 LoadingIndicator API를 업데이트했습니다. PullToRefreshLoadingIndicatorElevation 상수를 추가했습니다. (I1d72b)
  • 기본값 객체의 이름 지정을 수정하도록 LoadingIndicator API를 업데이트했습니다. PullToRefreshLoadingIndicatorElevation 상수를 추가했습니다. (I1d72b)
  • LinearWavyProgressIndicatorCircularWavyProgressIndicator의 불확정 변형에 amplitudewaveSpeed 매개변수를 추가했습니다. (I2a0c5)
  • 눌리거나 선택된 상태에 따라 아이콘 전환 버튼의 모양을 변경하는 기능을 지원합니다. (Ibc781)
  • 강조된 글꼴 크기를 지원하도록 서체 클래스를 업데이트합니다. (Ifa13c)
  • SplitButton 기본 / 눌린 상태에 따라 도형 모핑 TrailingButton API가 동일한 맞춤설정을 제공할 수 있으므로 AnimatedTrailingButton API를 삭제했습니다. (I95066)
  • 콘텐츠가 스크롤될 때와 같이 FAB의 표시 및 숨기기에 애니메이션을 적용하는 수정자를 추가합니다. (I8338d)
  • 샘플에 사용할 연결된 버튼 그룹 도형과 간격을 ButtonGroupDefaults에 추가합니다. (I68e30)
  • 분할 버튼이 뒤쪽 버튼에 가로 패딩을 추가하고 시작 및 끝 모서리 차이에서 계산된 광학 중앙 정렬을 사용 설정합니다. (I122e2)
  • 구성요소의 모션에 대한 스키마를 설정할 수 있는 새로운 Material MotionScheme를 도입했습니다. 스키마는 MaterialTheme를 통해 설정됩니다. (Id50c2)

버그 수정

  • Scaffold 하위 컴포저블에 올바른 포커스 전환 색인을 적용합니다. 순서는 topBar, bottomBar, FAB, 콘텐츠, 스낵바입니다. (I5936b)
  • 특정 언어 및 형식 스켈레톤에서 일부 날짜 요소 (예: 월 이름)가 대문자로 시작하지 않는 DatePickerDateRangePicker의 문제가 수정되었습니다. (I1430f)
  • FAB 및 FAB 메뉴 구성요소 토큰 통합 (패딩 및 텍스트의 사소한 시각적 업데이트) (Ib57f3)
  • 이제 ModalBottomSheet가 시맨틱 트래버스 순서에서 가장 먼저 표시되고 그 뒤에 스림이 표시됩니다. (I436f9, b/358594665)
  • 전체 화면 모드에서 탐색 필 아래로 스크롤할 때 하단 앱 바가 완전히 사라지지 않는 문제를 수정했습니다. (I3ee21)

Compose Material3 버전 1.3

버전 1.3.1

2024년 10월 30일

androidx.compose.material3:material3-*:1.3.1이 출시되었습니다. 버전 1.3.1에는 이 커밋이 포함되어 있습니다.

버그 수정

  • 이제 DatePickerDateRangePicker는 상태의 displayedMonthMillis를 통해 설정될 때 표시된 월을 올바르게 업데이트합니다. (If9e47, b/333414302)
  • 선택 가능한 최소 연도가 미래 연도로 설정된 경우 DatePickerDateRangePicker의 비정상 종료를 수정합니다. (I78656, b/319395747)
  • 업데이트된 SelectableDates 인스턴스가 적용될 때 UI를 업데이트하도록 날짜 선택 도구 문제를 수정했습니다. (Iad59a, b/290135807, b/339898760)
  • IME 키보드가 먼저 닫히도록 하려면 하단 시트에서 사용하는 콜백 우선순위를 PRIORITY_DEFAULT로 다시 변경합니다. (I447fb)

버전 1.3.0

2024년 9월 4일

androidx.compose.material3:material3-*:1.3.0이 출시되었습니다. 버전 1.3.0에는 이 커밋이 포함되어 있습니다.

1.2.0 이후 중요 변경사항

1.3.0의 주요 기능

새로운 Material Design 3 구성요소

  • 캐러셀
  • [ModalBottomSheet] 이제 U+에서 뒤로 탐색 예측을 지원합니다. (Iccf32, b/281967264, b/304850357)
  • [SearchBar] 이제 U+에서 뒤로 탐색 예측을 지원합니다. (I657f8)
  • 이제 탐색 창 (ModalDrawerSheetDismissibleDrawerSheet)이 U+에서 뒤로 탐색 예측을 선택사항으로 지원합니다. (Ie5b0b)
  • 이제 DropdownMenu에서 맞춤 색상, 도형, 고도, 테두리를 지원합니다. (I8e981,b/289554448, b/301887035, b/283654243)
  • 간격 및 중지 표시기를 추가하여 접근성을 개선하도록 슬라이더를 업데이트했습니다. (I3058e)
  • 간격 및 정지 표시기를 추가하여 접근성을 개선하도록 ProgressIndicator를 업데이트했습니다. (I21451)
  • 리치 도움말에 기본 캐럿을 추가했습니다. 주어진 앵커 LayoutCoordinates에 맞춤 캐럿을 그릴 수 있도록 지원합니다. (Ifd42c) 브레이킹 체인지
  • 새로운 풀투리프레시 API:
    • Dp 단위 대신 소수점 값을 사용하도록 PullToRefreshState를 단순화했습니다.
    • isRefreshing 상태는 PullToRefreshState 대신 사용자가 제어합니다.
    • 중첩된 스크롤 연결을 PullToRefreshState에서 분리했습니다. 새 PullToRefreshBox 또는 Modifier.pullToRefresh에서 처리합니다.
    • 이 업데이트는 이전 실험용 API의 브레이킹 체인지입니다. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) 시각적 중단사항
  • 색상 대비가 충분하도록 포커스 상태 오버레이를 0.1f로 업데이트합니다. (I7ea77)
  • lightColorSchemedarkColorScheme의 노출 영역 및 배경 색상 기본값을 약간 조정했습니다. (I9db52)
  • 새로운 비텍스트 대비 사양을 따르도록 슬라이더 및 ProgressIndicator 색상이 업데이트되었습니다. (I26807)
  • 이제 구성요소에서 SurfaceContainer 변형을 사용합니다. SurfaceTonalElevation로 공식적으로 색상을 계산하는 구성요소는 이제 기본적으로 색조 상승의 영향을 받지 않는 SurfaceContainer 역할을 사용합니다. (b/304584161)
  • 노출 영역 및 노출 영역 컨테이너 기준 역할이 약간 조정되어 밝은 테마와 어두운 테마에서 더 많은 색조가 제공됩니다. (I677a5)
  • 실험용 API를 안정화 버전으로 승격했습니다.
  • 성능 개선

버전 1.3.0-rc01

2024년 8월 21일

androidx.compose.material3:material3-*:1.3.0-rc01이 출시되었습니다. 버전 1.3.0-rc01에는 이 커밋이 포함되어 있습니다.

버그 수정

  • 이제 ModalBottomSheet가 시맨틱 트래버스 순서에서 가장 먼저 표시되고 그 뒤에 스림이 표시됩니다. (I436f9, b/358594665)

버전 1.3.0-beta05

2024년 7월 24일

androidx.compose.material3:material3-*:1.3.0-beta05이 출시되었습니다. 버전 1.3.0-beta05에는 이러한 커밋이 포함되어 있습니다.

  • Android N 및 O에서 BottomSheet 콘텐츠가 누락되거나 잘리는 문제를 수정했습니다. (a10a2d)
  • TalkBack가 엄지손가락 주위에 포커스 표시기를 올바르게 표시할 수 있도록 슬라이더의 시맨틱 경계를 늘렸습니다. (0b5a1d)

버전 1.3.0-beta04

2024년 6월 26일

androidx.compose.material3:material3-*:1.3.0-beta04이 출시되었습니다. 버전 1.3.0-beta04에는 이러한 커밋이 포함되어 있습니다.

버전 1.3.0-beta03

2024년 6월 12일

androidx.compose.material3:material3-*:1.3.0-beta03이 출시되었습니다. 버전 1.3.0-beta03에는 이러한 커밋이 포함되어 있습니다.

외부 기여

  • 공통 소스 세트에서 androidx.compose.material3.DropdownMenu를 사용할 수 있도록 합니다. (If62c0)

버전 1.3.0-beta02

2024년 5월 29일

androidx.compose.material3:material3-*:1.3.0-beta02이 출시되었습니다. 버전 1.3.0-beta02에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • Modifier.pullToRefreshIndicator가 고도를 지원합니다. 풀 투 리프레시 API를 업데이트하여 람다 대신 불리언으로 사용 설정합니다. PullToRefreshBox에서 콘텐츠 정렬을 지원합니다. (I75679)
  • TooltipScope를 봉인된 인터페이스로 만들고 TooltipBox 및 라벨에 사용할 내부 구현을 만듭니다. (I3833e)
  • 캐러셀 항목에 도형과 테두리를 쉽게 추가할 수 있도록 CarouselItemScope에 두 가지 새로운 수정자(maskClipmaskBorder)를 추가했습니다. (Id67a1)
  • 이제 TimePickerState이 인터페이스가 되었으며 시간을 설정할 수 있습니다. (I88546)
  • 링크 스타일 지정을 위한 API를 업데이트했습니다. TextLinkStylesTextStyle로 이동하고 Material에서 TextDefaults를 삭제했습니다. (I5477b)

버그 수정

  • 이제 ModalBottomSheet 상태 및 탐색 메뉴 표시줄 아이콘이 어두운 테마 상태에 반응합니다. (Ie1fe7, b/338342149)
  • ModalBottomSheet 스림에 시트 닫기 시맨틱을 추가했습니다. (0e61cb,b/328801864)

외부 기여

  • 공통 소스 세트에서 androidx.compose.material3.AlertDialog를 사용할 수 있도록 합니다. (Ia33f5)
  • 공통 소스 세트에서 ModalBottomSheet를 사용할 수 있도록 합니다. (Id7cc7)

버전 1.3.0-beta01

2024년 5월 14일

androidx.compose.material3:material3-*:1.3.0-beta01이 출시되었습니다. 버전 1.3.0-beta01에는 이러한 커밋이 포함되어 있습니다.

API 변경사항

  • CaretProperties 대신 DpSize을 사용합니다. CaretProperties 삭제 중 CaretScope의 이름을 TooltipScope로 바꿉니다. (Id9a76)
  • 텍스트에서 Material 테마 링크를 가져오는 API를 업데이트했습니다. 특히 테마가 지정된 LinkAnnotations를 생성하고 테마가 지정된 링크로 HTML을 파싱하는 메서드를 TextDefaults에서 삭제했습니다. 대신 링크의 스타일을 텍스트 컴포저블의 매개변수로 지정할 수 있는 TextLinkStyles 클래스를 추가했습니다. (I31b93)

버전 1.3.0-alpha06

2024년 5월 1일

androidx.compose.material3:material3-*:1.3.0-alpha06이 출시되었습니다. 버전 1.3.0-alpha06에는 이 커밋이 포함되어 있습니다.

브레이킹 체인지

  • 새로운 풀투리프레시 API:

    • Dp 단위 대신 소수점 값을 사용하도록 PullToRefreshState를 단순화했습니다.
    • isRefreshing 상태는 PullToRefreshState 대신 사용자가 제어합니다.
    • 중첩된 스크롤 연결을 PullToRefreshState에서 분리했습니다. 새 PullToRefreshBox 또는 Modifier.pullToRefresh에서 처리합니다.
    • 이 업데이트는 이전 실험용 API의 브레이킹 체인지입니다. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)

API 변경사항

  • RippleConfiguration#isEnabled가 삭제되고 LocalRippleConfiguration가 nullable이 되었습니다. 리플을 사용 중지하려면 isEnabled = falseRippleConfiguration를 제공하는 대신 LocalRippleConfigurationnull를 제공합니다. (I22725)
  • ModalBottomSheet이 전체 화면이 사용 설정된 경우 상태 표시줄 위에 더 정확하게 스림을 그립니다. 이제 모달 하단 시트 콘텐츠가 창 인셋을 사용할 수 있으므로 탐색 메뉴 위에 콘텐츠를 표시할 수 있습니다. ModalBottomSheet 매개변수 windowInsets의 이름이 contentWindowInsets로 변경되어 인셋이 적용될 위치를 지정합니다. 더 이상 창 로직에 연결되지 않습니다. contentWindowInsets 유형이 WindowInsets을 반환하는 함수로 변경되어 새 창 내에서 확인할 수 있습니다. (I39630, b/274872542, b/300280229, b/290893168)
  • 이제 PrimaryScrollableTabRowSecondaryScrollableTabRow가 하위 컴포지션 대신 맞춤 레이아웃을 사용하므로 성능이 개선됩니다. (I991e0)
  • 텍스트 링크에 일반 스타일, 마우스 오버, 포커스 외에도 눌림 상태 스타일 옵션이 추가되었습니다. TextDefaults 메서드에는 이를 지원하는 pressedStyle 인수가 각각 있습니다. (Ic473f, b/139312671)

버그 수정

  • 이제 탐색 창 드래그 앵커가 drawerContent의 너비와 일치합니다. (Ibc72f, b/245355396)
  • 이제 라벨의 OutlinedTextField 상단 패딩이 시스템 글꼴 크기를 고려합니다. (Idc781)
  • CalendarLocale의 패키지 위치를 수정했습니다. (Ifa235)
  • [뒤로 탐색 예측] (0.1, 0.1, 0, 1)의 보간 곡선을 사용하도록 뒤로 탐색 예측 애니메이션을 업데이트합니다. (I2591a)

버전 1.3.0-alpha05

2024년 4월 17일

androidx.compose.material3:material3-*:1.3.0-alpha05이 출시되었습니다. 버전 1.3.0-alpha05에는 이 커밋이 포함되어 있습니다.

새로운 기능

  • SearchBarDockedSearchBar에는 텍스트 필드 매개변수를 사용하는 새로운 오버로드가 있습니다. 이렇게 하면 검색창의 나머지 부분과 별도로 텍스트 필드의 스타일을 지정하고 맞춤 텍스트 필드를 전달할 수 있습니다. 현재 구현의 텍스트 필드는 SearchBarDefaults.InputField로 사용할 수 있습니다. (I50c73, b/275074248, b/278773336, b/326627700)
  • 필요한 경우 틱을 맞춤설정할 수 있도록 람다 drawTick가 공개 API에 추가되었습니다. (I0c048)

API 변경사항

  • 텍스트 링크에 일반 스타일, 마우스 오버, 포커스 외에도 눌림 상태 스타일 지정 옵션이 추가되었습니다. (I5f864, b/139312671)
  • 항목이 클립되는 마스크 직사각형을 노출하도록 CarouselItemInfo를 업데이트했습니다. (I785d8)
  • Material 3 공개 API에서 BasicTooltipState를 삭제했습니다. Foundation의 BasicTooltip가 안정화될 때까지 이 기능은 TooltipState와 결합됩니다. (Icda29)
  • LinkAnnotation를 생성하고 링크에 MaterialTheme를 적용하는 HTML 태그 문자열을 파싱하는 메서드가 포함된 TextDefaults 객체를 추가했습니다. (I98532, b/139312671)
  • ExposedDropdownMenuBoxScope가 더 이상 서브클래스를 허용하지 않습니다. 노출된 드롭다운 메뉴에는 이제 a11y를 더 효과적으로 지원하기 위해 menuAnchor에 전달해야 하는 MenuAnchorType가 있습니다. 이제 지원 중단된 ExposedDropdownMenufocusable를 전달하는 대신 이를 사용해야 합니다. menuAnchorenabled 상태를 제어하는 새로운 매개변수가 있습니다. (I55ee6, b/257209915, b/308840226)
  • 사용 중지된 경우 OutlinedButton의 테두리 색상이 수정되었습니다. 사용 설정된 상태를 사용하는 ButtonDefaults.outlinedButtonBorder("enabled") 오버로드를 추가했습니다. (Ie650b, b/318461363)
  • 클라이언트가 상품 크기에 관한 정보를 가져오는 데 도움이 되는 새 CarouselItemInfo 클래스를 추가했습니다. (I9070c)
  • 이제 노출 영역 컨테이너가 없는 ColorScheme 생성자가 지원 중단되었습니다. 노출 영역 컨테이너가 포함된 생성자로 이전하세요. (I35c11)
  • [윤곽선]TextFieldDefaults ContainerBox의 이름이 Container로 변경되었습니다. (Ie8d3b)

버그 수정

  • sheetSwipeEnabled가 false인 경우 BottomSheetScaffold가 더 이상 중첩된 스크롤에서 스크롤되지 않습니다. (I5e1c1, b/306464779)
  • IconButtonSamples.kt에서 일부 ExperimentalMaterial3Api 선택 주석을 삭제했습니다. (I111d1)

버전 1.3.0-alpha04

2024년 4월 3일

androidx.compose.material3:material3-*:1.3.0-alpha04이 출시되었습니다. 버전 1.3.0-alpha04에는 이 커밋이 포함되어 있습니다.

새로운 기능

  • Material3 캐러셀의 두 가지 실험 버전인 HorizontalMultiBrowseCarouselHorizontalUncontainedCarousel을 추가했습니다. (I88d64)
  • U+에서 뒤로 탐색 예측을 선택사항으로 지원하도록 Compose M3 탐색 창 (ModalDrawerSheetDismissibleDrawerSheet)을 업데이트했습니다. (Ie5b0b)
  • 리컴포지션을 방지하기 위해 색조를 람다로 전달할 수 있는 새 API를 Icon에 추가했습니다. (I5b5a2)
  • 이제 상단 앱 바 API가 고정 섹션과 접을 수 있는 섹션 모두에 맞춤 높이를 지원합니다. (Ib8b0c, b/323403446)

API 변경사항

  • 이제 상단 앱 바 API가 고정 섹션과 접을 수 있는 섹션 모두에 맞춤 높이를 지원합니다. 콘텐츠를 스크롤할 때 단일 행 상단 앱 바가 너무 자주 다시 구성되는 문제를 수정했습니다. 글꼴/디스플레이 설정이 큰 기기에서 MediumTopAppBar가 제목을 잘리는 문제를 해결했습니다. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676)
  • SegmentedButton 및 관련 API가 이제 안정화되었습니다. (I8a158)
  • 이제 SwipeToDismissBox, SwipeToDismissBoxDefaults, SwipeToDismissBoxState, SwipeToDismissBoxValue가 안정적으로 표시됩니다. (I5f000)
  • 지원 중단된 DismissDirectionDismissValue enum과 API를 삭제했습니다. (I89ccd)
  • 캐러셀의 CarouselState 컴패니언 객체에 실험용 태그를 추가했습니다. (I94154)
  • LocalMinimumInteractiveComponentEnforcement를 지원 중단하고 이를 대체하는 LocalMinimumInteractiveComponentSize를 도입했습니다. (I7a7ac)
  • 이제 SearchBarColors 생성자가 공개됩니다. (I769ca)
  • SwipeToDismissBoxgesturesEnabled 매개변수를 추가했습니다. (Idc59f, b/324170119)
  • 지원 중단 및 실험용으로 표시된 텍스트 필드 API를 삭제했습니다. (I1305f)

버전 1.3.0-alpha03

2024년 3월 20일

androidx.compose.material3:material3-*:1.3.0-alpha03이 출시되었습니다. 버전 1.3.0-alpha03에는 이러한 커밋이 포함되어 있습니다.

시각적 브레이킹 체인지

  • 색상 대비가 충분하도록 포커스 상태 오버레이를 0.1f로 업데이트합니다. (I7ea77)
  • lightColorSchemedarkColorScheme의 노출 영역 및 배경 색상 기본값을 약간 조정했습니다. (I9db52)

새로운 기능

  • ExposedDropdownMenu를 맞춤설정하는 매개변수를 추가했습니다. 특히 이제 메뉴에는 수정 가능한 텍스트 필드를 사용할 때 false로 설정해야 하는 focusable 매개변수 (기본값 true)가 있습니다. (I4184c, b/323694447, b/278609042)

API 변경사항

  • ScaffoldSubcomposeInMeasureFix 플래그가 삭제되었습니다. (Ie2a4b)
  • 이제 NavigationRailItemColors@Immutable로 표시됩니다. (If6112, b/327660613)
  • 이제 NavigationBarItemColors@Immutable로 표시됩니다. (I42a30, b/298064514)
  • 슬라이더 트랙 컴포저블에서 매개변수를 재정렬합니다. (I9f315)
  • 이제 ExposedDropdownMenuPopup을 사용하여 구현됩니다. 키보드에서 입력할 때 수정 가능한 텍스트 필드가 있는 포커스 전환 가능한 메뉴가 닫힐 수 있다는 점을 제외하고 동작은 동일해야 합니다.

버그 수정

  • 노출 영역 및 노출 영역 컨테이너 기준 역할이 약간 조정되어 밝은 테마와 어두운 테마에서 더 많은 색조가 제공됩니다. (I677a5)
  • 새로운 비텍스트 대비 사양을 따르도록 슬라이더 및 ProgressIndicator 색상이 업데이트되었습니다. (I26807)
  • 색상 대비가 충분하도록 포커스 상태 오버레이를 0.1f로 업데이트합니다. (I7ea77)
  • lightColorSchemedarkColorScheme의 노출 영역 및 배경 색상 기본값을 약간 조정했습니다. (I9db52)

버전 1.3.0-alpha02

2024년 3월 6일

androidx.compose.material3:material3-*:1.3.0-alpha02이 출시되었습니다. 버전 1.3.0-alpha02에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • 슬라이더 상태를 다시 안정화합니다. State.onValueChangeFinished를 다시 val로 설정합니다. onValueChangeFinishedrememberUpdatedState로 래핑합니다. (I82ab2, b/322269951)
  • 이제 탐색 구성요소에서 새 SurfaceContainer 역할을 사용합니다. 이제 DrawerDefaults에서 고유한 standardContainerColormodalContainerColor 속성을 제공합니다. DrawerDefaults.ModalDrawerElevation는 이제 0.dp입니다. (I7fbac)
  • state.onValueChangeFinishedvar로 변경하므로 Slider 상태에서 @Stable를 삭제합니다. (Ied34a, b/322269951)
  • ModalBottomSheetStandardBottomSheet 애니메이션 사양은 이제 스프링 애니메이션에서 업데이트된 TweenSpec입니다. 이렇게 하면 표시되는 오버슈트 문제가 해결됩니다. 밀도가 없는 지원 중단된 SheetState 생성자가 삭제되었습니다. (I7babc, b/285847707)

버그 수정

  • 이제 구성요소에서 SurfaceContainer 변형을 사용합니다. Surface 및 TonalElevation로 공식적으로 색상을 계산한 구성요소는 이제 기본적으로 색조 고도의 영향을 받지 않는 SurfaceContainer 역할을 사용합니다. (b/304584161)
  • ElevatedFilterChip의 선택 해제된 사용 중지된 컨테이너 색상이 검은색이 되는 버그를 수정했습니다. (I400e6, b/322407043)
  • 진행률이 0일 때 불확실한 진행률 표시기 수정 (Id6582)
  • RTL 레이아웃에서 SliderRangeSlider 관련 문제를 수정했습니다. (Iab0e1)
  • 부동 소수점 반올림이 부정확할 수 있으므로 슬라이더 범위 계산에 SliderRangeTolerance를 추가했습니다. (Ic918a, b/324934900)
  • DateRangePicker를 중첩할 때 또는 작은 화면에 더 큰 글꼴로 모든 유형의 날짜 선택 도구를 표시할 때 DatePickerDialog가 버튼을 표시하는지 확인합니다. (Ie4758, b/325107799, b/277768544)
  • 이제 Menu에서 컨테이너 색상에 SurfaceContainer 역할을 활용합니다. MenuDefaults.TonalElevation는 이제 0.dp입니다. (I135b7)
  • 이제 TextField에서 컨테이너 색상에 SurfaceContainerHighest 역할을 활용합니다. (I4dced)
  • 이제 승격된 칩이 SurfaceContainerLow 역할을 활용합니다. (I7cd2f)
  • DatePicker 컨테이너 색상이 이제 SurfaceContainerHigh입니다. DatePickerDefaults.TonalElevation는 이제 0.dp입니다. (Ida753)
  • 하단 시트 컨테이너 색상 및 드래그 핸들 색상을 업데이트합니다. (I72a0a)
  • RichTooltip 컨테이너 색상이 이제 SurfaceContainer입니다. (Ia8b45)
  • SearchBar 컨테이너 색상이 이제 SurfaceContainerHighest입니다. SearchBarDefaults.TonalElevation는 이제 0.dp입니다. (I88604)
  • SurfaceContainerHighest 색상 역할을 활용하도록 사용 중지된 트랙/아이콘과 선택 해제된 트랙/아이콘을 전환합니다. (I7687a)
  • AlertDialog 컨테이너 색상이 이제 SurfaceContainerHigh입니다. (Ie0433)
  • BottomAppBar 컨테이너 색상이 이제 SurfaceContainer입니다. TopAppBar onScroll 색상이 이제 SurfaceContainer로 변경되었습니다. (I41630)
  • ElevatedCard 컨테이너 색상이 이제 SurfaceContainerLow입니다. FilledCard의 컨테이너 색상 SurfaceContainerHighest. (I35141)
  • ElevatedButton 컨테이너 색상이 이제 SurfaceContainerLow입니다. 선택 해제된 FilledIconButton의 컨테이너 색상이 이제 SurfaceContainerHighest입니다. (I792c9)
  • TimePicker 컨테이너 색상 및 시계 다이얼 색상 역할을 SurfaceContainerHighest로 업데이트합니다. (I43b93)

버전 1.3.0-alpha01

2024년 2월 21일

androidx.compose.material3:material3-*:1.3.0-alpha01이 출시되었습니다. 버전 1.3.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

  • U+에서 뒤로 탐색 예측을 지원하도록 Compose M3 ModalBottomSheet를 업데이트했습니다. (Iccf32, b/281967264, b/304850357)
  • U+에서 뒤로 탐색 예측을 지원하도록 Compose M3 SearchBar를 업데이트했습니다. (I657f8)
  • 간격 및 중지 표시기를 추가하여 접근성을 개선하도록 슬라이더를 업데이트했습니다. (I3058e)
  • 간격 및 정지 표시기를 추가하여 접근성을 개선하도록 ProgressIndicator를 업데이트했습니다. (I21451)
  • 이제 리치 도움말에 기본 캐럿을 추가하여 새 리치 도움말 API를 통해 주어진 앵커 LayoutCoordinates를 기준으로 맞춤 캐럿을 그릴 수 있습니다. (Ifd42c)

동작 변경사항

  • Material 구성요소가 새 물결 효과 API를 사용하도록 이전되었으며 더 이상 RippleTheme를 쿼리하지 않습니다.

API 변경사항

  • 이제 재미있는 drawStopIndicator가 공개되었습니다. (I3f59f)
  • DatePickerformatWithSkeleton 함수를 내부로 표시합니다. (Ic65dc)
  • 이제 DropdownMenu에서 맞춤 색상, 도형, 고도, 테두리를 지원합니다. (I8e981, b/289554448, b/301887035, b/283654243)
  • API에 MutableInteractionSource를 노출하는 Material3 구성요소가 업데이트되어 이제 기본값이 null인 null 허용 MutableInteractionSource를 노출합니다. 여기서는 의미론적 변경사항이 없습니다. null을 전달하면 MutableInteractionSource를 호이스팅하지 않겠다는 의미이며 필요한 경우 구성원 내에서 생성됩니다. null로 변경하면 일부 구성요소는 MutableInteractionSource를 할당하지 않을 수 있고 다른 구성요소는 필요할 때만 인스턴스를 지연 생성할 수 있으므로 이러한 구성요소의 성능이 개선됩니다. 이러한 구성요소에 전달하는 MutableInteractionSource를 사용하지 않는 경우 대신 null을 전달하는 것이 좋습니다. 자체 구성요소에서도 유사한 변경사항을 적용하는 것이 좋습니다. (I41abb, b/298048146)
  • 고정 값을 사용하여 구성요소별 / 하위 트리별 물결 맞춤설정을 허용하도록 RippleConfigurationLocalRippleConfiguration를 추가합니다. 예를 들어 제어하지 않는 구성요소의 색상을 변경하거나 구성요소의 리플을 사용 중지하는 경우입니다. 대부분의 경우 기본값을 사용해야 합니다. 이러한 API는 개별 구성요소 / 제한된 하위 트리의 맞춤설정을 위한 탈출구입니다. 더 광범위한 변경사항과 맞춤 디자인 시스템의 경우 createRippleModifierNode를 사용하여 자체 리플을 빌드해야 합니다. (I7b5d6, b/298048146)
  • 지원 중단된 rememberRipple를 대체하는 새로운 물결 API를 material3에 추가합니다. 또한 material3 구성요소를 지원 중단된 rememberRipple / RippleTheme API를 사용하도록 되돌리기 위한 임시 CompositionLocal LocalUseFallbackRippleImplementation를 추가합니다. 이 기능은 다음 안정화 버전에서 삭제되며 맞춤 RippleTheme를 제공하는 케이스의 경우 일시적인 이전 지원 수단으로만 제공됩니다. (I34cbc, b/298048146)

버그 수정

  • 성능을 개선하기 위해 ModalBottomSheet 내의 하위 컴포지션을 삭제했습니다. 특정 시나리오에서 ModalBottomSheetLookaheadScope와 함께 비정상 종료되는 문제를 수정했습니다. (I2a198)
  • 성능을 개선하기 위해 BottomSheetScaffold 내의 하위 컴포지션을 삭제했습니다. 특정 시나리오에서 LookaheadScope와 함께 BottomSheetScaffold가 비정상 종료되는 문제를 수정했습니다. (Ie6401)
  • 배지 정렬이 오른쪽 상단을 기준으로 앵커 콘텐츠의 중앙에 더 가깝게 조정됩니다. (I18a28)
  • 월-연도 텍스트 제목이 스크린 리더, 스위치 액세스, 음성 액세스 사용자에게 실행 가능한 작업으로 전달되는 DateRangePicker의 접근성 문제를 수정했습니다. (I2ac55)
  • mediumTopAppBarColors 매개변수 순서 버그가 수정되었습니다. (Ibe64a)

버전 1.2

버전 1.2.1

2024년 3월 6일

androidx.compose.material3:material3-*:1.2.1이 출시되었습니다. 버전 1.2.1에는 이 커밋이 포함되어 있습니다.

버그 수정

  • 슬라이더 상태를 다시 안정화합니다. State.onValueChangeFinished를 다시 val로 설정합니다. onValueChangeFinishedrememberUpdatedState로 래핑합니다. (Ie8fd0, b/322269951)
  • state.onValueChangeFinishedvar로 변경하므로 Slider 상태에서 @Stable를 삭제합니다. (I82ba1, b/322269951)
  • 기본값에서 복사할 NavigationBar 맞춤 색상을 수정합니다. (80a779, b/326894020)
  • 다시 포커스를 설정할 수 있도록 ExposedDropdownMenu의 회귀를 수정했습니다. (3fcec1, b/323694447)
  • 버튼 색상 캐싱 문제를 수정했습니다. (3e5bbcb/327371655)

버전 1.2.0

2024년 2월 7일

androidx.compose.material3:material3-*:1.2.0이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.

알려진 문제

  • 성능 개선 변경의 일환으로 PrimaryTabRow에서 뷰-Compose 상호 운용성 렌더링 버그가 도입되었습니다. 해결 방법은 TabRowDefaults.PrimaryIndicator와 함께 TabRow를 사용하는 것입니다.

1.1.0 이후 중요 변경사항

새로운 Material Design 3 구성요소

기존 Material Design 3 구성요소가 개선되었습니다.

실험용 API를 안정화 버전으로 승격했습니다.

성능 개선

버전 1.2.0-rc01

2024년 1월 24일

androidx.compose.material3:material3-*:1.2.0-rc01이 출시되었습니다. 버전 1.2.0-rc01에 포함된 커밋을 확인하세요.

버그 수정

  • mediumTopAppBarColors 매개변수 순서 버그가 수정되었습니다. (Ibe64a)
  • containerColor 매개변수 값을 기반으로 contentColor를 업데이트하지 않는 CardDefaults.cardColors1.2.0-beta02에 도입된 버그를 수정했습니다. (Iee041, b/319671246)
  • 1.2.0-beta02에서 도입된 disabledContentColor의 버그를 수정하고 소규모 최적화를 추가했습니다. (I6dda1, b/318428829)

버전 1.2.0-beta02

2024년 1월 10일

androidx.compose.material3:material3-*:1.2.0-beta02이 출시되었습니다. 버전 1.2.0-beta02에 포함된 커밋을 확인하세요.

알려진 버그

  • IconButtonColors의 버그로 인해 기본적으로 disabledContentColor이 사용자 지정 contentColor 대신 LocalContentColor의 알파 (0.38f)에 할당됩니다. 해결 방법은 disabledContentColor를 명시적으로 설정하는 것입니다. 이 문제는 다음 버전에서 수정될 예정입니다.

API 변경사항

  • 일반 Tooltip API에 도움말 캐럿을 사용 설정하는 기능을 추가했습니다. (Ibf767)
  • SwipeToDismissState, rememberSwipeToDismiss, SwipeToDismissValue의 이름이 모두 _SwipeToDismissBox_로 변경되었습니다. (I68d6d)

버그 수정

  • 사양에 맞게 ListItem 끝 패딩 값을 수정했습니다. (Ibd68b, b/305342674)
  • 이제 윤곽선이 있는 카드의 윤곽선 색상이 OutlineVariant에 올바르게 매핑됩니다. (I75480, b/310979715)
  • 이제 동적 색상이 시스템 정의 색상 역할을 가져옵니다. 이렇게 하면 접근 가능한 콘텐츠의 대비가 개선되고 동적 색상이 Material 사양에 더 근접하게 조정됩니다. (I1de96)
  • android:enableOnBackInvokedCallback="true"인 경우 Android T/13 이상에서 ModalBottomSheet 뒤로 탐색 처리를 수정했습니다. (I728dc, b/306196110)

버전 1.2.0-beta01

2023년 12월 13일

androidx.compose.material3:material3-*:1.2.0-beta01이 출시되었습니다. 버전 1.2.0-beta01에 포함된 커밋을 확인하세요.

API 변경사항

  • TabIndicatorScope를 실험용으로 (I45c88)
  • 도움말에 관한 지원 중단된 실험용 API를 삭제했습니다. (I438cb)
  • 하위 컴포지션을 사용하지 않도록 새 TabRow 오버로드를 변경합니다. 이렇게 하면 제공된 맞춤 수정자를 사용하여 TabRow 표시기를 빌드하는 다른 방법이 됩니다. (Ife741)
  • DismissDirectionDismissValue API가 지원 중단되었습니다. 이 값은 SwipeToDismissValue에 병합되었으며, SwipeToDismissValue의 값은 SwipeToDismissBox의 위치와 방향을 모두 나타냅니다. 이제 DismissState.progress0.01.0 사이의 FloatRange로 표시됩니다. DismissState 지원 중단된 저장소 및 생성자가 삭제되었습니다. SwipeToDismiss 구성요소, 상태, 기본값 객체가 실험용으로 다시 표시되었습니다. (Ib54f2)

버그 수정

  • 이제 PullToRefresh의 기본 표시기가 솔리드 삼각형 대신 개방된 화살표입니다. (I67be3)

버전 1.2.0-alpha12

2023년 11월 29일

androidx.compose.material3:material3-*:1.2.0-alpha12이 출시되었습니다. 버전 1.2.0-alpha12에 포함된 커밋을 확인하세요.

API 변경사항

  • 이제 RangeSlider가 Kotlin 범위 (예: 0f..1f)를 사용합니다.FloatRange 이제 SnapFlingBehavior.kt도 Kotlin 범위를 사용합니다. (I025cb)
  • 수정자 팩토리 함수를 @Stable로 표시합니다. (Ib109f)

버전 1.2.0-alpha11

2023년 11월 15일

androidx.compose.material3:material3-*:1.2.0-alpha11이 출시되었습니다. 버전 1.2.0-alpha11에 포함된 커밋을 확인하세요.

새로운 기능

  • Material3에서 풀 투 리프레시 구현을 제공하는 PullToRefreshContainerPullToRefreshState를 구현합니다. (I16456, b/261760718)

API 변경사항

  • SwipeToDismissBox DismissDirectionDismissValue를 실험용으로 표시합니다. (I517b0)
  • SwipeToDismiss의 이름을 SwipeToDismissBox로 바꿉니다. background의 이름을 backgroundContent로, dismissContent의 이름을 후행 content 람다로 바꿉니다. (I7f4d3)
  • ChipElevationSelectableChipElevation의 생성자를 공개로 만듭니다. (Ie0c48, b/308432421)
  • ModalBottomSheetProperties 추가 중 securePolicyModalBottomSheetProperties로 이동합니다. isFocusableshouldDismissOnBackPressModalBottomSheetProperties에 추가합니다. 이 새로운 불리언은 모달 하단 시트에서 IME 이벤트를 처리하는 방법을 결정하는 데 도움이 됩니다. (Iea56f, b/278216859)
  • initialOnValueChange, 초기 접두사, 적절한 kdocs를 삭제하도록 RangeSliderSlider 상태를 업데이트했습니다. (I57d30)
  • ChipBorder 클래스 및 관련 함수 호출을 지원 중단합니다. 대신 BorderStroke를 직접 사용하는 것이 좋습니다. (I89cc2)
  • Foundation Tooltip API가 이제 @ExperimentalFoundationApi입니다. (I30b0b)
  • TabRowScrollableTabRow는 더 이상 지원 중단되지 않습니다. 새 기본 및 보조 변형은 실험용으로 표시됩니다. (I0def6)
  • 이제 필터 및 입력 칩이 BorderStroke를 직접 사용합니다. (I07a8d)
  • 이제 SegmentedButton에서 BorderStroke를 직접 사용합니다. (I89b9b)
  • 제네릭 AlertDialog 함수의 이름을 BasicAlertDialog로 바꾸고 이전 함수를 지원 중단했습니다. (Idbe52)
  • SwipeToDismiss API의 이름을 SwipeDismiss로 변경하고 새 SwipeDismiss API를 안정화 버전으로 승격합니다. (I14cbe)
  • 도움말 API에 tonalElevationshadowElevation를 추가했습니다. 또한 TooltipBox, PlainTooltip, RichTooltip API가 실수로 안정화 버전으로 출시되었으므로 실험용으로 다시 이동했습니다. (If0f66, b/293939035)
  • 실험용 칩 API를 안정화 버전으로 승격합니다. (Iea2c3)
  • Material3 클릭 가능한 카드에서 @ExperimentalMaterial3Api 주석을 삭제했습니다. (I88dbf)

버그 수정

  • 중첩된 룩어헤드 및 지연 레이아웃이 있는 특정 시나리오에서 SwipeToDismiss이 비정상 종료되는 문제를 수정했습니다. (Ica8d1, b/297226562)

버전 1.2.0-alpha10

2023년 10월 18일

androidx.compose.material3:material3-*:1.2.0-alpha10이 출시되었습니다. 버전 1.2.0-alpha10에 포함된 커밋을 확인하세요.

API 변경사항

  • BadgeBadgedBox를 안정화 버전으로 승격했습니다. (I67f16, b/261565132)
  • 사용자가 WindowManager.LayoutParams.FLAG_SECURE의 동작을 정의할 수 있도록 securePolicyModalBottomSheet에 매개변수로 추가합니다. (Icdac8, b/296250262)
  • progress을 람다로 사용하는 LinearProgressIndicatorCircularProgressIndicator의 새 오버로드를 추가했습니다. 이전 버전보다 성능이 향상되었습니다. (I824e6, b/295616656)
  • StandardSizeClasses의 이름을 AllSizeClasses로 바꿉니다. (I8cb07)
  • 창 크기 클래스의 계산 함수를 결합합니다. (Iad935)

버그 수정

  • 표시된 월이 허용되는 연도 범위의 끝에 있을 때 탐색 화살표 버튼을 빠르게 클릭할 때 발생하는 DatePicker 비정상 종료 문제를 수정했습니다. (I46f36, b/290954897, b/297002119)
  • [탐색 레일/막대] 표시기의 투명 색상을 지원합니다. (Ie0a9b, b/267289987)

버전 1.2.0-alpha09

2023년 10월 4일

androidx.compose.material3:material3-*:1.2.0-alpha09이 출시되었습니다. 버전 1.2.0-alpha09에 포함된 커밋을 확인하세요.

API 변경사항

  • AnchoredDraggable API를 사용하도록 ModalNavigationDrawerDismissibleNavigationDrawer를 이전했습니다. DrawerStateanimateTo가 open 및 close 메서드로 대체되었으며 이제 오프셋이 상태 객체 대신 부동 소수점 수로 노출됩니다. currentOffset를 통해 오프셋에 직접 액세스할 수 있습니다. (I0a72c)
  • DatePickerStateDateRangePickerState를 직접 만들기 위한 구성 불가능한 함수가 추가되었습니다. 이러한 함수는 필요한 경우 컴포저블 rememberDatePickerStaterememberDateRangePickerState 함수의 대안으로 사용할 수 있습니다. (I70326, b/291524052)
  • 고정 및 스크롤 가능한 TabRows에 이제 기본 및 보조 변형이 있습니다. Material3에 정의된 색상 및 표시기 동작에 올바르게 매핑됩니다.
  • 이제 PrimaryScrollableTabRowSecondaryScrollableTabRow가 스크롤 상태를 노출합니다. (Iec8f5, b/260572337)
  • 개발자가 시트가 확장될 최대 너비를 지정하도록 설정할 수 있는 새 sheetMaxWidth 매개변수를 추가합니다. 전체 화면 너비에 걸쳐 있는 시트를 원하는 경우 Dp.Unspecified를 매개변수로 전달할 수 있습니다. (Ifb7c9, b/266697696)
  • PlainTooltipBoxRichTooltipBox API를 지원 중단된 메서드로 다시 추가합니다. (I246fa)

버그 수정

  • 날짜 패턴 (예: YY)으로 변환할 때 동일하게 유지되는 특정 날짜 스켈레톤이 있는 DatePickerFormatterDatePicker가 초기화될 때 발생하는 비정상 종료를 수정했습니다. (I01f29)

버전 1.2.0-alpha08

2023년 9월 20일

androidx.compose.material3:material3-*:1.2.0-alpha08이 출시되었습니다. 버전 1.2.0-alpha08에 포함된 커밋을 확인하세요.

동작 브레이킹 체인지

  • 이제 ColorScheme가 불변이므로 개별 색상 업데이트의 효율성이 떨어지지만 색상의 일반적인 사용은 더 효율적입니다. 이번 변경사항의 이유는 대부분의 앱에서 개별 색상 업데이트를 주요 사용 사례로 사용하지 않기 때문입니다. 이는 여전히 가능하지만 이전보다 더 많이 리컴포즈됩니다. 따라서 모든 Material 코드를 통해 상태 구독의 양이 크게 줄어들고 더 많은 표준 사용 사례의 초기화 및 런타임 비용에 영향을 미칩니다. (Ic447d, b/297212873)
  • 색조 고도가 사양에 맞게 여러 상호작용 상태에서 더 이상 애니메이션되지 않습니다. (Icdd12)

API 변경사항

  • 콘텐츠가 스크롤될 때 자동으로 숨기기 위해 BottomAppBarScrollBehavior을 매개변수로 사용하는 새 BottomAppBar를 추가했습니다. FAB가 스캐폴드 위에 고정되는 대신 하단 앱 바를 오버레이할 수 있는 FabPosition.EndOverlay도 추가했습니다. (Iecb47)
  • BasicTooltipBox를 기반으로 빌드되고 라벨의 경계 외부를 탭해도 닫히지 않는 간단한 라벨 구성요소를 추가했습니다. (I821f9)

버그 수정

  • 도움말에 rememberSaveable 사용을 삭제했습니다. (Icc131, b/299500338)
  • Scaffold가 측정 중에 하위 요소를 측정할지 아니면 배치 중에 측정할지 제어하는 임시 플래그를 도입했습니다. 기본적으로 측정 단위는 측정으로 설정됩니다. 새 동작과 관련된 문제가 있는 경우 문제를 신고해 주세요. (I0b354)
  • 기기 화면 너비의 올바른 측정값을 사용하여 BottomSheet의 가로 Edge to Edge를 수정했습니다. (I1df0c, b/299058752)
  • 시트를 아래로 스와이프하여 닫을 때 ModalBottomSheetonDismissedRequest를 호출하지 않는 버그를 수정했습니다. (Idfdd8)

버전 1.2.0-alpha07

2023년 9월 6일

androidx.compose.material3:material3-*:1.2.0-alpha07이 출시되었습니다. 버전 1.2.0-alpha07에 포함된 커밋을 확인하세요.

새로운 기능

  • compose material 1.6.0-alpha05에 자동 미러링 아이콘 지원이 추가되었습니다. 자동 미러링 아이콘에 관한 자세한 내용은 출시 노트를 참고하세요.

API 변경사항

  • SliderStateDraggableState를 구현합니다. (I9b116)
  • shape를 필수 매개변수로 변경합니다. 도형 도우미 함수에서 position의 이름을 index으로 바꿉니다. (I34941)
  • 성능 개선을 위한 캐시로 사용되는 지도를 포함하도록 DatePicker formatWithSkeleton를 업데이트합니다. (I3195f)
  • BasicTooltipBoxcompose.foundation에 추가하고 새 PlainTooltipRichTooltip 컴포저블과 함께 TooltipBox를 사용하도록 PlainTooltipBoxRichTooltipBox를 업데이트했습니다. (I79e1d)

버그 수정

  • 이제 dynamicLightColorSchemedynamicDarkColorScheme가 표면 및 surfaceContainer 역할에 더 높은 크로마 색상을 반환합니다. (I5e901)
  • LookaheadScope 내 Scaffold 내에서 하위 컴포지션 (예: BottomSheetScaffold)을 사용하는 일부 구성요소가 크기를 너무 일찍 읽으려고 시도하는 문제를 수정했습니다. (I297b4, I871f1, b/295536718)

버전 1.2.0-alpha06

2023년 8월 23일

androidx.compose.material3:material3-*:1.2.0-alpha06이 출시되었습니다. 버전 1.2.0-alpha06에 포함된 커밋을 확인하세요.

버그 수정

  • x 오프셋이 로컬 레이아웃 방향에만 종속되도록 DropdownMenuoffset 계산을 수정했으며, 메뉴가 화면 하단에 가까울 때 더 이상 y 오프셋이 반전되지 않습니다. (Iccc74, b/294103942)
  • x 오프셋이 로컬 레이아웃 방향에만 종속되도록 DropdownMenuoffset 계산을 수정했으며, 메뉴가 화면 하단에 가까울 때 더 이상 y 오프셋이 반전되지 않습니다. (Ib87a2, b/294103942)

버전 1.2.0-alpha05

2023년 8월 9일

androidx.compose.material3:material3-*:1.2.0-alpha05이 출시되었습니다. 버전 1.2.0-alpha05에 포함된 커밋을 확인하세요.

API 변경사항

  • 체크박스 및 TriStateCheckbox 색상이 업데이트되었습니다. 이제 CheckboxDefaults.colors() disabledUncheckedColor는 체크박스의 테두리에만 영향을 미칩니다. 사용 중지되고 선택 해제된 경우 내부 상자 색상을 설정해야 하는 특수한 경우에는 원하는 색상 값으로 맞춤 구성된 CheckboxColors 인스턴스가 필요합니다. (I77d17, b/291943198)

버전 1.2.0-alpha04

2023년 7월 26일

androidx.compose.material3:material3-*:1.2.0-alpha04이 출시되었습니다. 버전 1.2.0-alpha04에 포함된 커밋을 확인하세요.

새로운 기능

  • 실험용 분류 버튼 API (Ifc8fb)
  • 이제 세로 구분자를 지원하도록 방향을 제어하는 매개변수가 구분자에 있습니다. (I4c899, b/288438593)

API 변경사항

  • 밀도 종속 항목을 구성요소 수준으로 이동하고 있습니다. 이는 SwipeToDismiss 및 시트 기반 구성요소에 적용됩니다. 밀도가 매개변수인 경우 제공된 새 오버로드를 사용하세요. (I1846e)
  • 컴포저블에 허용되는 입력을 지정하는 추가 주석 (Ief234)
  • 분할된 버튼에 아이콘 매개변수를 추가하고 분할된 버튼을 선택하여 단일 선택을 구현하고 전환하여 SelectableSegmentedButtonRowToggelableSegmentedButtonRow로 각각 다중 선택을 구현할 수 있도록 시맨틱을 분할합니다. (I38740)
  • Divider의 이름이 HorizontalDivider로 변경되었습니다. VerticalDivider 기능을 추가했습니다. (I5975c)
  • 자동 박스를 최소화하기 위해 실험용 Material3 API에서 더 가벼운 FloatRangeClosedFloatingPointRange 사용을 변경합니다. (I4aab5)
  • FabPosition의 새로운 시작 정렬을 추가했습니다. (Ib7aea, b/170592777)

버그 수정

  • ModalBottomSheet는 현지 레이아웃 방향을 따릅니다. (Ib4f44, b/285628622)

버전 1.2.0-alpha03

2023년 6월 21일

androidx.compose.material3:material3-*:1.2.0-alpha03이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.

동작 변경사항

  • 이제 Material 3 서체에서 includeFontPadding가 기본적으로 false입니다. 기본 줄 높이 스타일도 Trim.NoneAlignment.Center로 변경되었으며, 명시적 lineHeight (sp 단위)가 TypographyTextStyle에 추가되었습니다. 이러한 값을 맞춤설정하려면 API 문서를 참고하고, 이러한 변경사항에 관한 자세한 설명은 블로그 게시물을 참고하세요. (I6266f, Icabc3)

새로운 기능

  • 구성요소의 상태가 있는 버전인 RangeSlider의 오버로드를 추가했습니다. 현재 활성 트랙의 모든 정보, RangeSlider 구성요소의 측정값, 드래그 및 동작 로직을 보유하는 RangeSliderState를 만들었습니다. (I8c270)
  • 이제 검색창에서 새로 추가된 shadowElevation 매개변수를 통해 그림자를 지원합니다. (Ia5369, b/271040353)
  • 이제 ColorScheme에서 새로운 SurfaceContainer 역할을 지원합니다.
  • 이제 LocalTonalElevationEnabled 컴포지션 로컬을 사용하여 표면 색조 고도 오버레이를 사용 중지할 수 있습니다. (Ic203c, b/277774590)

API 변경사항

  • 구성요소 색상 생성자를 엽니다. (I8c4a6)
  • 개발자가 도움말이 터치 이벤트를 소비하도록 할지 여부를 결정할 수 있도록 두 도움말 API에 focusable 매개변수를 추가했습니다. 이렇게 하면 접근성 포커스 자동 탐색이 중단될 수 있으므로 주의하세요. (Ie32d8)
  • 성능 및 메모리 할당을 위해 접근성을 최적화했습니다. (Iede48)
  • DefaultSizeClasses를 노출하고 WindowSizeClassesStandardSizeClasses를 만듭니다. (I91838)
  • WindowWidth/HeightSizeClass를 부동 소수점 값 클래스로 변경합니다. (Ie686e)

버그 수정

  • 이제 Scaffold의 contentWindowInsets 매개변수가 소비된 창 인셋을 따릅니다. topBarbottomBar를 기반으로 하는 콘텐츠 패딩 동작은 이러한 매개변수가 제공되더라도 변경되지 않습니다. (I08b73, b/264601542)
  • 긴 제목이 작업 아이콘이나 탐색 아이콘 위에 렌더링되지 않도록 중앙 상단 앱 바의 정렬을 수정했습니다. (I4369f, b/236994621)
  • 이제 탭 위치에 최소 콘텐츠 너비 24.dp가 적용됩니다. 이렇게 하면 탭 표시기에 액세스 가능한 터치 영역이 제공됩니다. (Id8861)
  • 이제 dynamicLightColorSchemedynamicDarkColorScheme의 동적 색상 팔레트가 새로운 노출 영역 역할을 지원합니다. (I1252e)
  • 증조부모와 충돌할 때 클립되지 않도록 배지 알림 정렬을 업데이트합니다. (Idf75a)

버전 1.2.0-alpha02

2023년 5월 24일

androidx.compose.material3:material3-*:1.2.0-alpha02이 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • ModalBottomSheet에 창 인셋 매개변수를 추가합니다.
    • 이제 windowInsets가 0으로 설정된 상태 표시줄 뒤에 ModalBottomSheet의 스림이 그려질 수 있습니다.
    • 탐색을 포함한 시스템 표시줄 외부에 유지되도록 기본 ModalBottomSheet 기능을 업데이트했습니다.
    • 상태 표시줄 인셋 처리는 더 넓은 화면 모드의 드래그 핸들에 의해 제공됩니다.
    • BottomSheetDefaults에는 BottomSheetWindow의 창 인셋이 포함됩니다. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
  • Indicator를 지원 중단하고 M3 사양에 맞게 Primary/SecondaryIndicator를 추가합니다. PrimaryIndicator는 탭 콘텐츠의 너비와 일치하는 반면 SecondaryIndicator는 사용 가능한 전체 너비에 걸쳐 있습니다. SecondaryIndicator는 이제 지원 중단된 Indicator와 동일하며 직접 대체할 수 있습니다. (I27604)
  • 표시된 메뉴 항목의 세로 스크롤 상태를 제어하기 위해 DropdownMenu 또는 ExposedDropdownMenu를 구성할 때 ScrollState를 전달하는 옵션을 추가했습니다. (Ia0734, b/185304441)
  • 구성요소의 상태가 있는 버전인 Slider의 오버로드를 추가했습니다. 현재 활성 트랙의 모든 정보, Slider 구성요소의 측정값, 드래그 및 동작 로직을 보유하는 SliderState를 만들었습니다. (I124a5)
  • 시맨틱 속성 isContainer의 이름을 isTraversalGroup로 변경했습니다. (I121f6)
  • 전체 매개변수 목록이 포함된 최적화된 TextStyle.merge(...)를 추가했습니다. (Iad234, b/246961787)
  • TooltipState, RichTooltipState, PlainTooltipState를 공개 인터페이스로 만들었습니다. 기본 상태에 RichTooltipStateImplPlainTooltipStateImpl를 추가했습니다. 구현된 상태를 가져오는 remember*State 함수를 추가했습니다. TooltipSyncTooltipDefault.GlobalMutatorMutex로 대체되었습니다. (I7813d)
  • 날짜 선택 도구 구분선, 탐색, 텍스트 입력란 색상의 맞춤설정 옵션을 추가하도록 DatePickerColors를 업데이트했습니다. (I1a685, b/274626815)
  • 이제 DatePickerStateDateRangePickerStaterememberDatePickerStaterememberDateRangePickerState에서 검색할 수 있는 기본 구현이 포함된 공개 인터페이스입니다. (I71c52)
  • DatePickerDateRangePicker에서 dateValidator를 삭제하고 UI에서 선택할 수 있는 날짜 또는 연도를 제어하도록 상태에 설정할 수 있는 SelectableDates 인터페이스를 도입했습니다. (Ic2fc6)
  • 안정화 API에서 TimePicker가 삭제되었습니다. 상태 API에서 추가 변경사항이 있을 것으로 예상됩니다. (I3f39a)
  • ModalBottomSheet가 Android 전용으로 이동했습니다. ModalBottomSheet은(는) 데스크톱용으로 권장되지 않으며 이 기능은 활발히 유지되지 않습니다. (Ib3778)

버그 수정

  • 작업이 대화상자의 너비에 맞게 서로 겹쳐 표시될 때 확인 작업 아래에 AlertDialog 닫기 작업이 표시되도록 수정했습니다. 이 수정사항은 구현을 Material Design 사양에 맞게 조정합니다. (I029de, b/235454277)
  • ListItem에서 3줄 항목에 잘못된 패딩을 사용하는 버그가 수정되었습니다. (I6e235)
  • 이제 ModalBottomSheet에서 IME 키보드를 표시할 수 있습니다. (Idc508, b/262140644, b/268380384, b/272483584)

버전 1.2.0-alpha01

2023년 5월 10일

androidx.compose.material3:material3:1.2.0-alpha01androidx.compose.material3:material3-window-size-class:1.2.0-alpha01이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.

버전 1.1

버전 1.1.2

2023년 9월 20일

androidx.compose.material3:material3:1.1.2androidx.compose.material3:material3-window-size-class:1.1.2이 출시되었습니다. 버전 1.1.2에 포함된 커밋을 확인하세요.

버그 수정

  • 두 컴포저블에 수정자가 잘못 전달되는 문제를 수정했습니다. (b/282761472)
  • 23시간으로 초기화하면 TimePickerState가 잘못된 시간을 반환하는 문제를 수정했습니다. (b/278242122)
  • 정오 및 분 검증의 초기 전환 상태를 수정했습니다. (b/269768197, b/282790635)
  • state.hour가 오후 11시에 잘못된 값을 반환하는 문제를 수정했습니다. (b/282761472, b/278242122)

버전 1.1.1

2023년 6월 21일

androidx.compose.material3:material3:1.1.1androidx.compose.material3:material3-window-size-class:1.1.1이 출시되었습니다. 버전 1.1.1에 포함된 커밋을 확인하세요.

버그 수정

  • 바이너리 호환성을 위해 windowInset 매개변수 없이 ModalBottomSheet 호출을 추가합니다. (Ib7959)
  • ModalBottomSheet에 창 인셋 매개변수를 추가합니다.
    • 이제 windowInsets가 0으로 설정된 상태 표시줄 뒤에 ModalBottomSheet의 스림이 그려질 수 있습니다.
    • 탐색을 포함한 시스템 표시줄 외부에 유지되도록 기본 ModalBottomSheet 기능을 업데이트했습니다.
    • 상태 표시줄 인셋 처리는 더 넓은 화면 모드의 드래그 핸들에 의해 제공됩니다.
    • BottomSheetDefaults에는 BottomSheetWindow의 창 인셋이 포함됩니다. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)

버전 1.1.0

2023년 5월 10일

androidx.compose.material3:material3:1.1.0androidx.compose.material3:material3-window-size-class:1.1.0이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.

1.1.0의 주요 기능

새로운 Material Design 3 구성요소

기존 Material Design 3 구성요소가 개선되었습니다.

실험용 API를 안정화 버전으로 승격했습니다.

자세한 내용은 이 블로그 게시물을 확인하세요.

버전 1.1.0-rc01

2023년 4월 19일

androidx.compose.material3:material3:1.1.0-rc01androidx.compose.material3:material3-window-size-class:1.1.0-rc01이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.

API 변경사항

  • 안정화 API에서 TimePicker가 삭제되었습니다. 상태 API에서 추가 변경사항이 있을 것으로 예상됩니다. (I3f39a)
  • ModalBottomSheet가 Android 전용으로 이동했습니다. ModalBottomSheet은(는) 데스크톱용으로 권장되지 않으며 이 기능은 활발히 유지되지 않습니다. (Ib3778)

버전 1.1.0-beta02

2023년 4월 5일

androidx.compose.material3:material3:1.1.0-beta02androidx.compose.material3:material3-window-size-class:1.1.0-beta02이 출시되었습니다. 버전 1.1.0-beta02에 포함된 커밋을 확인하세요.

API 변경사항

  • 이제 SheetState에 선택적 skipHiddenState 매개변수가 있습니다.
  • 이제 rememberStandardBottomSheetState에 선택적 skipHiddenState 매개변수가 있습니다.
  • 이제 BottomSheetScaffold에 정의된 숨겨진 앵커가 있지만 기본적으로 사용 중지되어 있습니다.
  • SheetState.requireOffset 문서가 업데이트되었습니다.
  • BottomSheetDefaults.MinimizedShape의 이름이 BottomSheetDefaults.HiddenShape로 변경되었습니다. (I839f4, b/273870234)

버그 수정

  • 터치 탐색이 사용 설정된 경우 다이얼 페이스를 시간에서 분으로 전환하지 마세요. (I717d0)
  • 이제 ModalBottomSheetBottomSheetScaffold 드래그 핸들 시맨틱이 병합되었습니다. (I05afb)
  • 이제 BottomSheetScaffold 수정자, containerColor, contentColor 매개변수가 콘텐츠에만 영향을 미칩니다. (I992cb)
  • 이제 시트 콘텐츠의 BottomSheetScaffold nestedScroll가 플링을 구현합니다. (I992cb)

버전 1.1.0-beta01

2023년 3월 22일

androidx.compose.material3:material3:1.1.0-beta01androidx.compose.material3:material3-window-size-class:1.1.0-beta01이 출시되었습니다. 버전 1.1.0-beta01에 포함된 커밋을 확인하세요.

API 변경사항

  • TimePicker 컴포저블에 레이아웃 유형 매개변수를 추가합니다. 화면 구성에 따라 다른 레이아웃을 사용할 수 있습니다. (Ia0e16)
  • SearchBarDefaults는 실험용으로 표시됩니다. (I65561)
  • BottomSheetScaffold에 그림자 높이를 추가했습니다. (I94e0f)
  • 헤더 부분 없이 날짜 선택 도구를 표시하는 지원을 추가했습니다. 날짜 선택 도구를 만들 때 null 헤드라인을 전달할 수 있도록 API가 변경되었습니다. 이제 헤드리스 선택 도구를 표시하기 위해 null 광고 제목, 제목, showToggleMode = false를 전달할 수 있습니다. (Id3f3a, b/266132421, b/267194809)

버그 수정

  • 이제 검색창이 비활성 상태가 되면 자동으로 포커스가 삭제됩니다. (I22a7c, b/261444487)
  • 시작일과 종료일이 동일한 기간을 선택할 수 있도록 DateRangePicker를 업데이트했습니다. (I16529, b/272882497)
  • 이제 글꼴 크기가 예상보다 작을 때 텍스트 필드가 텍스트 요소를 올바르게 배치합니다. 이로 인해 글꼴 설정 및 스크립트에 따라 앱에서 몇 픽셀이 변경될 수 있습니다. (I8b8d0)
  • 이제 하단 시트 시맨틱 작업에 라벨이 지정됩니다. (I277b0)

버전 1.1.0-alpha08

2023년 3월 8일

androidx.compose.material3:material3:1.1.0-alpha08androidx.compose.material3:material3-window-size-class:1.1.0-alpha08이 출시되었습니다. 버전 1.1.0-alpha08에 포함된 커밋을 확인하세요.

새로운 기능

  • BottomSheetScaffoldBottomSheetScaffoldState 지원을 추가했습니다. (I063d4)

API 변경사항

  • 상태를 처음 만든 후 날짜를 설정하고 null 타임스탬프를 설정하여 선택을 재설정할 수 있는 기능을 DatePickerStateDateRangePickerState에 추가했습니다. 날짜를 수동으로 설정할 때는 주의해야 하며, 제공된 날짜가 사전 조건을 충족하지 못하면 새 setSelection 함수가 예외를 발생시킵니다 (문서 참고). (Ifa645, b/268609314, b/270427389)
  • Collapsed SheetValue의 이름을 PartiallyExpanded로 변경하여 이 상태의 동작을 더 정확하고 유연하게 묘사합니다. (Ia1491)
  • ListItem 매개변수 이름을 _text 대신 _content로 업데이트했습니다. 이제 관련 있는 경우 기본 getter가 ReadOnlyComposables입니다. (I69a25)
  • 대화형 Surface API를 실험용에서 승격했습니다. (I90d59, b/261561812)

버그 수정

  • ModalBottomSheetHalfExpanded 상태가 잘못 계산되고 시트가 플로팅되는 것으로 표시되는 문제가 해결되었습니다. (I45e84, b/268411386)
  • ModalBottomSheet의 스림 탭에 confirmValueChange 검사를 추가했습니다. (I2311a, b/270425759)
  • 시맨틱 BottomSheet 작업을 드래그 핸들로 이동합니다. (I158ba)
  • 이제 ModalBottomSheet가 실행 시 포커스를 지정하고 뒤로 버튼을 처리합니다. (I4d2ab)
  • 이제 중첩된 스크롤 플링 중에 ModalBottomSheet onDismissRequest도 처리됩니다. (I655c5, b/268433166)

버전 1.1.0-alpha07

2023년 2월 22일

androidx.compose.material3:material3:1.1.0-alpha07androidx.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로, placeholderColorunfocusedPlaceholderColor로 이름이 변경되었습니다.
    • errorContainerColor 매개변수와 함께 오류 상태를 기반으로 채워진 텍스트 필드의 컨테이너 색상
  • 노출된 드롭다운 메뉴 텍스트 필드 색상이 새로운 접두사 및 접미사 API를 지원하기 위해 매개변수로 업데이트되었습니다. (I9c8b4, b/254284181, b/264766350)

API 변경사항

  • 일부 Slider API 버전을 되돌리고 맞춤 thumb 및 트랙이 포함된 새 실험용 슬라이더에서 다루는 중복 슬라이더 오버로드를 삭제했습니다. RangeSlider를 안정적인 것으로 승격했습니다. (Ie8fbd)
  • 칩의 고도 함수에서 defaultElevationelevation으로 이름을 바꿨습니다. (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 DatePickerDateRangePicker의 접근성을 개선했습니다. (I5087e)
  • 최대 높이 제약 조건이 전파되어 다운될 수 있는 버그를 수정했습니다. (I30d8c)
  • 클릭 가능하고 선택 가능한 노출 영역에서 시맨틱 역할을 삭제하고 modifier.semantics를 사용하여 역할을 설정하는 데 이를 사용한 구성요소를 업데이트했습니다. (I793d9)

버전 1.1.0-alpha06

2023년 2월 8일

androidx.compose.material3:material3:1.1.0-alpha06androidx.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)
  • ModalBottomSheetModalBottomSheetDefaults를 포함하여 Material 3용 모달 하단 시트를 구현했습니다. 향후 시트 구성요소에 사용할 수 있는 SheetStaterememberSheetState도 도입했습니다. (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을 안정화 버전으로 승격하고 맞춤 미리보기 이미지와 트랙을 포함하는 비실험용 SliderRangeSlider API를 추가했습니다. 이전의 SliderRangeSlider 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-alpha05androidx.compose.material3:material3-window-size-class:1.1.0-alpha05가 출시되었습니다. 버전 1.1.0-alpha05에 포함된 커밋을 확인하세요.

새로운 기능

  • DatePickerDialog 및 접근성 지원
  • RangeSlider에 맞춤 thumb 및 트랙 추가

종속 항목 업데이트

  • Compose UICompose Material은 이제 Lifecycle 2.6.0에 종속됩니다.

버전 1.1.0-alpha04

2023년 1월 11일

androidx.compose.material3:material3:1.1.0-alpha04androidx.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.materialandroidx.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-alpha03androidx.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을 수정했습니다.
  • ClickablesScrollable ViewGroup 내에서 사용될 때 물결 효과가 올바르게 지연되지 않는 문제를 수정했습니다.
  • 동작이 스크롤 이벤트가 될 가능성이 있는 경우 누르기가 올바르게 지연되도록 창 및 시트를 업데이트했습니다.

종속 항목 업데이트

  • Compose UICompose Material은 이제 Lifecycle 2.5.1에 종속됩니다. (I05ab0, b/258038814)

버전 1.1.0-alpha02

2022년 11월 9일

androidx.compose.material3:material3:1.1.0-alpha02androidx.compose.material3:material3-window-size-class:1.1.0-alpha02가 출시되었습니다. 버전 1.1.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • 이제 awaitFirstDownwaitForUpOrCancellation이 더 나은 유연성을 위해 PointerEventPass를 허용합니다. 또한 스크롤 중에 메뉴를 표시하는 ExposedDropdownMenuBox를 수정했습니다. (I7579a, b/212091796)
  • material 및 material3 텍스트 TextFieldOutlinedTextFieldminLines 매개변수를 추가했습니다. 이를 통해 구성요소의 최소 높이를 줄 수로 설정할 수 있습니다. (I4af1d)
  • TopAppBarDefaults smallTopAppBarColors 함수를 지원 중단하고 새 topAppBarColors 함수로 대체했으며 이 함수는 TopAppBar를 만들 때 사용해야 합니다. (Ie6cb9)
  • BasicTextBasicTextFieldminLines 매개변수를 추가했습니다. 이를 통해 줄 수 측면에서 이러한 컴포저블의 최소 높이를 설정할 수 있습니다. (I24294, b/122476634)

버그 수정

  • Material3 IconButtonIconToggleBotton의 콘텐츠를 구성요소의 상태 레이어 도형(예: 원형)으로 자릅니다. (I9da8f)
  • 노출 영역 전체에 동일한 배경 색상을 적용하고, 투명한 색상 값을 사용하여 기본 색상을 재정의할 수 있도록 Material3 중형 및 대형 상단 앱 바를 업데이트합니다. (I67659, b/249688556, b/250838918)

버전 1.1.0-alpha01

2022년 10월 24일

androidx.compose.material3:material3:1.1.0-alpha01androidx.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.1androidx.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.0androidx.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 구성요소

창 크기 클래스

  • material3-window-size-class는 창 크기 클래스를 지원하는 새로운 라이브러리입니다. 크기 조절이 가능한 체계적인 표시 영역 중단점 세트를 통해 크기 조절이 가능한 애플리케이션 레이아웃을 디자인하고 개발 및 테스트할 수 있습니다. calculateWindowSizeClass을 사용하여 창 크기 클래스 인스턴스를 검색할 수 있습니다. 이 클래스는 더 큰 창 크기에 관한 하단 탐색 대신 탐색 레일을 표시하는 등 UI가 표시되는 방식을 결정하는 데 사용할 수 있습니다. 자세한 내용 및 샘플 사용법은 WindowSizeClass의 API 참조 문서를 확인하세요.

  • 자세한 내용은 이 블로그 게시물을 확인하세요.

버전 1.0.0-rc01

2022년 10월 5일

androidx.compose.material3:material3:1.0.0-rc01androidx.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-beta03androidx.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-beta02androidx.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-beta01androidx.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-alpha16androidx.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)
  • NavigationBarNavigationRail 매개변수를 재정렬하여 API 내 일관성을 유지합니다. (I51cda)
  • Material 3의 매개변수를 재정렬하여 API 전체에서 일관성을 유지합니다. (If4ae1)
  • Material 3의 Slider 매개변수를 재정렬하여 API 내 일관성을 유지합니다. (I62673)
  • 상단 앱 바와 일관되도록 아이콘 매개변수를 작업으로 이름을 바꿨습니다. (Id75be)
  • 앵커 정렬이 여전히 유입되기 때문에 BadgeBadgedBox를 실험용으로 표시합니다. (I1712e, b/236524516)
  • 아이콘 버튼 변형의 @ExperimentalMaterial3Api 주석을 @OptIn으로 변경합니다. (I070b5)
  • 탐색 창의 콘텐츠를 자체 컴포저블로 분리하여 맞춤 너비 지정을 지원합니다. (Ia7f10)
  • MenuDefaultsTabDefaults에서 Divider를 삭제합니다. (I4e33c)

버전 1.0.0-alpha15

2022년 7월 27일

androidx.compose.material3:material3:1.0.0-alpha15androidx.compose.material3:material3-window-size-class:1.0.0-alpha15가 출시되었습니다. 버전 1.0.0-alpha15에 포함된 커밋을 확인하세요.

새로운 기능

  • 상단 앱 바를 바 자체에서 드래그하도록 허용합니다. (I65c00, b/205873416)

API 변경사항

  • FilterChipElevatedFilterChip API를 업데이트하여 selectedIcon 슬롯을 삭제하고, 선택된 상태를 표시하는 leadingIcon을 재사용합니다. (Ie5dc2)
  • 스크림 및 윤곽선 변형 색상 역할을 추가합니다. (Id6d54)
  • 컴포저블 기본값의 이름 지정 규칙을 수정했습니다. (I62b27)
  • ListItemDefaultsListItemColors를 실험용으로 표시합니다. (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-alpha14androidx.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)
  • WindowWidthSizeClassWindowHeightSizeClass가 이제 Comparable을 구현하므로 연산자 (<, <=, >=, >) 및 기타 API를 사용하여 비교 가능합니다. (I747d0)

버그 수정

  • 더 의미 있는 콘텐츠 설명을 제공하기 위해 배지 샘플을 업데이트합니다. (I10b9d)
  • Material 3 카탈로그의 테마 선택 도구에 시스템 글꼴 크기를 사용하기 위한 옵션을 추가합니다. (I10605)
  • 배지 및 확실하지 않은 진행 상태 표시기의 샘플 코드를 추가합니다. (I8fbe0)

버전 1.0.0-alpha13

2022년 6월 1일

androidx.compose.material3:material3:1.0.0-alpha13androidx.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-alpha12androidx.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-alpha11androidx.compose.material3:material3-window-size-class:1.0.0-alpha11이 출시되었습니다. 버전 1.0.0-alpha11에 포함된 커밋을 확인하세요.

새로운 기능

  • Material 3에 RangeSlider를 추가했습니다. (I18e38)
  • Material 3 AssistChipInputChip 지원을 추가합니다. (I0d25a)
  • Material 3 FilterChipSuggestionChip 지원을 추가합니다. (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-alpha10androidx.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에 포함된 커밋을 확인하세요.

새로운 기능

API 변경사항

  • 메뉴의 기본 구분선을 추가합니다. (I01374)
  • surfaceTint 색상 매개변수를 ColorScheme 클래스에 추가했습니다. (I2f558)

버그 수정

  • 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)
  • 이제 LazyVerticalGridLazyHorizontalGrid가 안정적입니다. (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).
  • PermanentNavigationDrawerDismissibleNavigationDrawer가 실험용 API로 추가되었습니다. 이 API는 대형 화면 기기에 적합한 창입니다. (I5f8ab, b/218286829)
  • Material 3 하단 앱 바 지원을 추가했습니다(Ic432a).
  • NavigationDrawer에서 ModalNavigationDrawer로 이름이 변경되었습니다. (I1807d, b/218286829)
  • Material 3 Slider 클래스 및 토큰을 추가했습니다. (I1ccee)
  • 탭 구현을 추가했습니다. 샘플 사용에 관한 문서를 참고하세요(Ie0146).

버그 수정

  • TalkBack 스크린 리더의 순차적 탐색에서 빈 상단 앱 바 제목이 선택되는 문제가 해결되었습니다. (Id4690)
  • FloatingActionButtonDefaultsIconSize를 추가했습니다. (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 함수가 지원 중단되었습니다. 클릭 가능한 노출 영역은 InteractionSourceModifier.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의 MaterialThemeLocalIndication을 추가했습니다. (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 섹션을 참고하세요.