Compose Material 3

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

구조

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.2.0"
    implementation "androidx.compose.material3:material3-window-size-class:1.2.0"
    implementation "androidx.compose.material3:material3-adaptive:1.0.0-alpha06"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

의견

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

새로운 문제 제출하기

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

Compose Material3 Adaptive Navigation Suite 버전 1.0

버전 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-alpha04, androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04이 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.

종속 항목 업데이트

  • Material3 적응형 종속 항목을 새 모듈 경로로 업데이트합니다. 추가했습니다. (Ibc421)
  • 창 크기 클래스의 창 관리자 버전을 사용하도록 이전합니다. 추가했습니다. (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-alpha03, androidx.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-alpha02, androidx.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 Adaptive 버전 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-alpha06, androidx.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-alpha05, androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05이 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.

새로운 기능

  • Scaffold 탐색 및 값 계산에서 기록 인식을 지원합니다. (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-alpha04, androidx.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-alpha03, androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.

API 변경사항

  • 스캐폴드 역할을 ThreePaneScaffoldRole의 별칭으로 변경합니다. 추가했습니다. (I65bd1)
  • Scaffold 역할의 기본 클래스를 만듭니다. (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-alpha02, androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02이 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • 적응형 Scaffold 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 적응형 창 Scaffold 지시문 API:

Material3 적응형 창 Scaffold API:

Compose Material3 버전 1.3

버전 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)
  • Material 3에 지원 중단된 rememberRipple를 대체하는 새 물결 효과 API를 추가했습니다. 또한 지원 중단된 rememberRipple / RippleTheme API를 사용하도록 Material3 구성요소를 되돌리도록 임시 CompositionLocal, LocalUseFallbackRippleImplementation를 추가합니다. 이는 다음 안정화 버전에서 삭제될 예정이며, 맞춤 RippleTheme를 제공하는 경우를 위한 일시적인 이전 지원만을 목적으로 합니다. 추가했습니다. (I34cbc, b/298048146)

버그 수정

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

버전 1.2

버전 1.2.0

2024년 2월 7일

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

알려진 문제

  • View-Compose 상호 운용성 렌더링 버그가 성능 개선 변경사항의 일환으로 PrimaryTabRow에 도입되었습니다. 해결 방법은 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 T/13 이상에서 android:enableOnBackInvokedCallback="true"일 때 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로 병합되었으며, 이 값은 SwipeToDismissBox의 위치와 방향을 모두 나타냅니다. 이제 DismissState.progress0.0에서 1.0 사이의 FloatRange로 표시됩니다. 이제 지원 중단된 DismissState Saver 및 생성자가 삭제되었습니다. 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 Help API가 @ExperimentalFoundationApi로 변경되었습니다. 추가했습니다. (I30b0b)
  • TabRowScrollableTabRow가 더 이상 지원 중단되지 않습니다. 새로운 기본 및 보조 대안은 실험용으로 표시됩니다. 추가했습니다. (I0def6)
  • 이제 필터 및 입력 칩이 BorderStroke를 직접 사용합니다. 추가했습니다. (I07a8d)
  • 이제 SegmentedButtonBorderStroke를 직접 사용합니다. 추가했습니다. (I89b9b)
  • 일반 AlertDialog 함수의 이름을 BasicAlertDialog로 바꾸고 이전 함수를 지원 중단했습니다. 추가했습니다. (Idbe52)
  • SwipeToDismiss API의 이름을 SwipeDismiss로 바꾸고 새 SwipeDismiss API를 안정화 버전으로 승격합니다. 추가했습니다. (I14cbe)
  • 도움말 API에 tonalElevationshadowElevation를 추가했습니다. 또한 TooltipBox, PlainTooltip, RichTooltip API가 실수로 안정화 버전으로 출시되었으므로 다시 실험용으로 이동했습니다. 추가했습니다. (If0f66, b/293939035)
  • 실험용 칩 API를 안정화 버전으로 승격합니다. 추가했습니다. (Iea2c3)
  • Material3의 클릭 가능한 카드에서 @ExperimentalMaterial3Api 주석을 삭제했습니다. 추가했습니다. (I88dbf)

버그 수정

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

버그 수정

  • DatePicker가 날짜 패턴으로 변환될 때 동일하게 유지되는 특정 날짜 스켈레톤 (예: YY)이 있는 DatePickerFormatter로 초기화될 때 발생하는 비정상 종료 문제를 수정합니다. 추가했습니다. (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가 Scaffold 위에 고정되는 대신 하단 앱 바를 오버레이할 수 있도록 FabPosition.EndOverlay를 추가했습니다. 추가했습니다. (Iecb47)
  • 라벨 경계 밖을 탭할 때 닫히지 않는 BasicTooltipBox를 기반으로 빌드된 간단한 라벨 구성요소를 추가했습니다. 추가했습니다. (I821f9)

버그 수정

  • 도움말에 대한 rememberSaveable 사용을 삭제했습니다. 추가했습니다. (Icc131, b/299500338)
  • Scaffold가 측정 중에 또는 배치 중에 하위 요소를 측정해야 하는지 제어하는 임시 플래그를 도입했습니다. 기본적으로 측정으로 측정됩니다. 새로운 동작에 문제가 발생하면 문제를 신고해 주세요. 추가했습니다. (I0b354)
  • 기기 화면 너비의 올바른 측정을 사용하여 BottomSheet의 가로 가장자리에서 가장자리까지 수정했습니다. 추가했습니다. (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)
  • 도형을 필수 매개변수로 변경합니다. 도형 도우미 함수에서 position의 이름을 index로 바꿉니다. 추가했습니다. (I34941)
  • 성능 개선을 위해 캐시로 사용되는 지도를 포함하도록 DatePicker formatWithSkeleton를 업데이트합니다. 추가했습니다. (I3195f)
  • compose.foundationBasicTooltipBox를 추가하고 TooltipBox를 새로운 PlainTooltipRichTooltip 컴포저블과 함께 사용하도록 PlainTooltipBoxRichTooltipBox를 업데이트했습니다. 추가했습니다. (I79e1d)

버그 수정

  • 이제 dynamicLightColorSchemedynamicDarkColorScheme가 노출 영역 및 surfaceContainer 역할에 더 높은 크로마 색상을 반환합니다. 추가했습니다. (I5e901)
  • LookaheadScope 내 Scaffold 내에서 Subcomposition (예: 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 오프셋이 로컬 레이아웃 방향에만 의존하고 메뉴가 화면 하단에 있을 때 y 오프셋이 더 이상 취소되지 않도록 DropdownMenuoffset 계산이 수정되었습니다. 추가했습니다. (Iccc74, b/294103942)
  • x 오프셋이 로컬 레이아웃 방향에만 의존하고 메뉴가 화면 하단에 있을 때 y 오프셋이 더 이상 취소되지 않도록 DropdownMenuoffset 계산이 수정되었습니다. 추가했습니다. (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에 포함된 커밋을 확인하세요.

새로운 기능

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

API 변경사항

  • 밀도 종속 항목을 구성요소 수준으로 이동합니다. 이는 SwipeToDismiss 및 시트 기반 구성요소에 적용됩니다. 밀도가 매개변수인 경우 제공된 새 오버로드를 사용하세요. 추가했습니다. (I1846e)
  • 컴포저블에 허용되는 입력을 지정하는 추가 주석 (Ief234)
  • 분할된 버튼에 아이콘 매개변수를 추가하고, 분할된 버튼을 선택하여 단일 선택을 구현할 수 있도록 분할 시맨틱스를 추가하고 각각 SelectableSegmentedButtonRowToggelableSegmentedButtonRow로 전환하여 다중 선택을 구현할 수 있도록 합니다. 추가했습니다. (I38740)
  • 구분선 이름이 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)

새로운 기능

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

API 변경사항

  • 구성요소 색상 생성자를 엽니다. 추가했습니다. (I8c4a6)
  • 개발자가 도움말에서 터치 이벤트를 소비하도록 할 수 있도록 두 도움말 API에 포커스 가능 매개변수를 추가했습니다. 이 경우 접근성 포커스 자동 순회가 중단될 수 있으므로 주의하세요. 추가했습니다. (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/275483}), b/275483}362973615
  • Indicator를 지원 중단하고 M3 사양과 일치하도록 Primary/SecondaryIndicator를 추가합니다. PrimaryIndicator는 탭 콘텐츠의 너비와 일치하지만 SecondaryIndicator는 사용 가능한 전체 너비에 걸쳐 있습니다. SecondaryIndicator는 현재 지원 중단된 Indicator와 동일하며 직접 대체할 수 있습니다. 추가했습니다. (I27604)
  • 표시된 메뉴 항목의 세로 스크롤 상태를 제어하기 위해 DropdownMenu 또는 ExposedDropdownMenu를 구성할 때 ScrollState를 전달하는 옵션을 추가했습니다. 추가했습니다. (Ia0734, b/185304441)
  • 구성요소의 스테이트풀(Stateful) 버전인 Slider의 오버로드가 추가되었습니다. 현재 활성 트랙의 모든 정보, Slider 구성요소의 측정치, 드래그 및 동작 로직을 포함하는 SliderState를 만들었습니다. 추가했습니다. (I124a5)
  • 시맨틱 속성 isContainer의 이름을 isTraversalGroup로 변경했습니다. (I121f6)
  • 전체 매개변수 목록이 있는 최적화된 TextStyle.merge(...)가 추가되었습니다. 추가했습니다. (Iad234, b/246961787)
  • TooltipState, RichTooltipState, PlainTooltipState 공개 인터페이스를 만들었습니다. 기본 상태의 RichTooltipStateImplPlainTooltipStateImpl를 추가했습니다. 이러한 구현된 상태를 가져오는 remember*State 함수를 추가했습니다. TooltipSync를 삭제하고 TooltipDefault.GlobalMutatorMutex로 대체했습니다. 추가했습니다. (I7813d)
  • 날짜 선택 도구 구분선, 탐색, 텍스트 입력란 색상에 관한 추가 맞춤설정 옵션을 포함하도록 DatePickerColors를 업데이트했습니다. 추가했습니다. (I1a685, b/274626815)
  • DatePickerStateDateRangePickerState는 이제 rememberDatePickerStaterememberDateRangePickerState에서 검색할 수 있는 기본 구현이 포함된 공개 인터페이스입니다. 추가했습니다. (I71c52)
  • DatePickerDateRangePicker에서 dateValidator를 삭제하고 UI에서 선택할 수 있는 날짜나 연도를 제어하기 위해 상태에 설정할 수 있는 SelectableDates 인터페이스를 도입했습니다. 추가했습니다. (Ic2fc6)
  • 안정적인 API에서 TimePicker를 삭제했습니다. 상태 API에 추가 변경사항이 있을 예정입니다. (I3f39a)
  • ModalBottomSheet를 Android 전용으로 이동했습니다. ModalBottomSheet은 데스크톱에서는 권장되지 않으며 기능이 적극적으로 유지되지 않습니다. 추가했습니다. (Ib3778)

버그 수정

  • 대화상자 너비에 맞도록 작업이 서로 겹칠 때 AlertDialog 닫기 작업이 확인 작업 아래에 표시되도록 수정되었습니다. 이 수정사항은 머티리얼 디자인 사양에 맞게 구현을 수정했습니다. (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/269768197b/282790635를 참조하세요.
  • state.hour가 오후 11시에 잘못된 값을 반환하는 문제를 수정했습니다. b/282761472b/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/275483}), b/275483}362973615

버전 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 변경사항

  • DatePickerStateDateRangePickerState에 상태가 처음 생성된 이후의 날짜를 설정하고 null 타임스탬프를 설정하여 선택을 재설정할 수 있는 기능이 추가되었습니다. 날짜를 수동으로 설정할 때는 주의해야 합니다. 제공된 날짜가 전제조건에 맞지 않는 경우 새 setSelection 함수에서 예외가 발생합니다 (문서 참조). 추가했습니다. (Ifa645, b/268609314, b/270427389)
  • 이 상태의 동작을 더 정확하고 유연하게 묘사하기 위해 접힌 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 섹션을 참고하세요.