Compose Material 3
androidx.compose.material3
(Consulte os documentos de referência da API para todos os pacotes do Compose)
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
2 de julho de 2025 | 1.3.2 | - | - | 1.4.0-alpha17 |
Estrutura
O Compose é uma combinação de sete IDs de grupos do Maven no androidx
. Os grupos
contêm um subconjunto direcionado de funcionalidades, cada um com um conjunto próprio de notas
da versão.
Esta tabela explica os grupos e contém links para cada conjunto de notas da versão.
Grupo | Descrição |
---|---|
compose.animation | Crie animações nos aplicativos Jetpack Compose para enriquecer a experiência do usuário. |
compose.compiler | Transforme funções @Composable e ative otimizações com um plug-in do compilador Kotlin. |
compose.foundation | Crie aplicativos do Jetpack Compose com elementos básicos prontos que podem ser usados para criar suas próprias peças de sistema de design. |
compose.material | Crie IUs do Jetpack Compose com componentes do Material Design prontos para uso. Este é o ponto de entrada de nível mais alto do Compose, projetado para fornecer componentes que correspondam aos descritos em www.material.io. |
compose.material3 | Crie IUs do Jetpack Compose usando componentes do Material Design 3, a nova versão do Material Design. O Material 3 inclui temas e componentes atualizados, além de recursos de personalização do Material You, como cores dinâmicas, e foi desenvolvido para ser coeso com o novo estilo visual do Android 12 e com a interface do sistema. |
compose.runtime | Elementos fundamentais do modelo de programação e do gerenciamento de estado do Compose e do ambiente de execução principal do plug-in Compose Compiler. |
compose.ui | Componentes fundamentais do Compose UI necessários para interagir com o dispositivo, incluindo layout, desenho e entrada. |
Declarar dependências
Para adicionar uma dependência ao Compose, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle
do
seu app ou módulo:
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.3.2" implementation "androidx.compose.material3:material3-window-size-class:1.3.2" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.2") implementation("androidx.compose.material3:material3-window-size-class:1.3.2") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Compose Material3 Common: versão 1.0
Versão 1.0.0-alpha01
17 de abril de 2024
Lançamento de androidx.compose.material3:material3-common:1.0.0-alpha01
, androidx.compose.material3:material3-common-android:1.0.0-alpha01
e androidx.compose.material3:material3-common-desktop:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
Componentes sem tema que podem ser usados para criar componentes do Material Design:
- Paleta tonal
- Ícone
- Tamanho da área de toque
Compose Material3 Adaptive Navigation Suite: versão 1.0
Versão 1.0.0-alpha07
1º de maio de 2024
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
. A versão 1.0.0-alpha07 contém estas confirmações.
Mudanças na API
- Tornar as APIs do pacote de navegação não experimentais (If62af)
Correções de bugs
- Consumir encartes para conteúdo por padrão (50266df)
Versão 1.0.0-alpha06
17 de abril de 2024
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
. A versão 1.0.0-alpha06 contém estas confirmações.
Mudanças na API
- Adicione
containerColor
econtentColor
aNavigationSuiteScaffoldDefaults
. (I64e3a, b/331993720) - Adicionando a função
itemColors
aNavigationSuiteDefaults
. (Idf719, b/328480012) NavigationSuiteScope
foi lacrado. (Iefa57).
Versão 1.0.0-alpha05
6 de março de 2024
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
. A versão 1.0.0-alpha05 contém estas confirmações.
Mudanças na API
- O construtor
NavigationSuiteItemColors
foi transformado em público. (Ica83a, b/324886877).
Versão 1.0.0-alpha04
21 de fevereiro de 2024
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
. A versão 1.0.0-alpha04 contém estas confirmações.
Atualizações de dependência
- Atualize as dependências adaptáveis do Material3 para os novos caminhos de módulo. (Ibc421)
- Migre para usar a versão do Window Manager das classes de tamanho de janela. (I3794d).
Versão 1.0.0-alpha03
7 de fevereiro de 2024
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Mudanças na API
- Atualizar o nome do pacote para navigationsuite em vez de navigation-suite (I7eff7)
- Os componentes do Material3 que expõem um
MutableInteractionSource
na API foram atualizados para expor umMutableInteractionSource
anulável que tem como padrão o valor nulo. Não há mudanças semânticas aqui: transmitir nulo significa que você não quer elevar oMutableInteractionSource
, e ele será criado dentro do componente, se necessário. A mudança para nulo permite que alguns componentes nunca aloquem umMutableInteractionSource
e que outros componentes só criem uma instância quando necessário, o que melhora o desempenho desses componentes. Se você não estiver usando oMutableInteractionSource
transmitido a esses componentes, recomendamos transmitir "null". Também é recomendável fazer mudanças semelhantes nos seus próprios componentes. (I41abb, b/298048146).
Versão 1.0.0-alpha02
13 de dezembro de 2023
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
e androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Novos recursos
- Adição de um
NavigationSuiteType
"Nenhum" (If8cb1, b/313688598).
Correções de bugs
- Correção do componente de navegação que preenche a tela inteira quando a superfície raiz tem
modifier.fillMaxSize
. (c9cf250, b/312664933)
Versão 1.0.0-alpha01
15 de novembro de 2023
Lançamento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
Compose Material3 Adaptive: versão 1.0
Versão 1.0.0-alpha06
7 de fevereiro de 2024
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
e androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
. A versão 1.0.0-alpha06 contém estas confirmações.
Novos recursos
- Adição de outras opções de comportamento para a navegação de retorno
ThreePaneScaffoldNavigator
. (I858aa). - Adicionamos conteúdo de destino opcional ao histórico de navegação. (Ibd7e6).
Versão 1.0.0-alpha05
24 de janeiro de 2024
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
e androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
. A versão 1.0.0-alpha05 contém estas confirmações.
Novos recursos
- Compatibilidade com reconhecimento do histórico na navegação de scaffold e no cálculo de valores (I71d46).
Versão 1.0.0-alpha04
10 de janeiro de 2024
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
e androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
. A versão 1.0.0-alpha04 contém estas confirmações.
Novos recursos
- Adição de suporte de ponta a ponta em estruturas de painel (I1b462).
Mudanças na API
- Propriedades de limites de dobradiça movidas em Posture para uma lista de informações de dobradiça (I24f90).
Correções de bugs
- Correção:
AnimatedPane
não é recomposto (c3f573d)
Versão 1.0.0-alpha03
13 de dezembro de 2023
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
e androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Mudanças na API
- Mude as funções de scaffolding para aliases de
ThreePaneScaffoldRole
. (I65bd1). - Criar uma classe de base para papéis de scaffolding (I4784d)
- Remoção de parâmetro desnecessário do conteúdo de
AnimatedPane
(Ibc73b) - Renomeia
collectWindowSizeAsState
e retorna valores brutos (I480f4).
Versão 1.0.0-alpha02
29 de novembro de 2023
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
e androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Mudanças na API
- Dividir APIs de navegação das APIs de estrutura adaptável. (Ic4045)
- Remover a turma
GutterSize
. (I785b3).
Correções de bugs
- Correção de painéis que não eram trocados quando
AnimatedPane
não era usado (d88f181)
Versão 1.0.0-alpha01
15 de novembro de 2023
Lançamento de androidx.compose.material3:material3-adaptive:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
APIs de condição adaptativa do Material3:
APIs de diretiva de estrutura de painel adaptável do Material3:
APIs de estrutura de painel adaptável do Material3:
- APIs básicas de estrutura do painel
Compose Material3: versão 1.4
Versão 1.4.0-alpha17
2 de julho de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha17
. A versão 1.4.0-alpha17 contém estas confirmações.
Novos recursos
- Atualizar a animação do grupo de botões para animar até 75% da animação quando clicado em vez de pressionado. (593942a, b/423596967)
Correções de bugs
- Correção de um problema em que um item do carrossel poderia, em alguns casos, exceder o tamanho do elemento grande durante os cálculos de layout, o que cortava todo o widget. (I1c3d7, b/397489534)
- Correção de pulos após
beforeContentPadding
ao rolar carrosséis com deslocamentos de início e fim sobrepostos. (c3d5f3a, b/420618979) - Atualize o comportamento ativado de
SwipeToDismiss
para observar o estado fixo em vez do atual. Restaura o comportamento atual em que o comportamento de âncora só é desativado quando o componente está em um estado dispensado. (3844e07, b/425006844) - O menu pop-up do
ExposedDropdownMenu
agora pode ser aberto com a entrada do teclado. Além disso, o menu agora pode ser acessado pelo teclado na variação editável. (46ead03)
Versão 1.4.0-alpha16
18 de junho de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha16
. A versão 1.4.0-alpha16 contém estas confirmações.
Novos recursos
- Adição de um componente de carrossel principal alinhado ao centro (I6f6d3)
Mudanças na API
- Implementar substituições de XR na barra de ferramentas vertical (Ia1604)
- Adição de funções de rolagem programática a
CarouselState
(I12f8e). - Adição de
ComponentOverride
paraModalWideNavigationRail
(I4f440). - Adição de
ComponentOverride
paraWideNavigationRail
(I6354f). - Criar
ComponentOverride
paraHorizontalFloatingToolbar
(I51116) - Criar
ComponentOverride
paraShortNavigationBar
(I30e24) - As referências
SwipeToDismissBoxState
aconfirmValueChange
foram marcadas como descontinuadas. Em vez disso, os usuários devem aproveitar o callbackonDismissed
da APISwipeToDismissBox
. (Iee780) - Adição do parâmetro userScrollEnabled aos elementos combináveis do carrossel. (I1d4d2)
- Agora é possível observar o
currentItem
do carrossel emCarouselState
. (Ie87e9).
Correções de bugs
- Correção de um problema em que uma forma arbitrária em um FAB transmitido a um
FloatingToolbar
não aplicava a sombra corretamente. (Icdcc9, b/423336922). - Todos os carrosséis agora usam a função semântica "Carrossel" por padrão. (I7af12).
- Correção do movimento incorreto do controle deslizante quando o estado dele era atualizado via
LaunchedEffect
(Id9f31, b/302774166).
Versão 1.4.0-alpha15
20 de maio de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha15
. A versão 1.4.0-alpha15 contém estas confirmações.
Mudanças na API
- Adição de
MotionTheme.LocalMotionScheme
, local de composição. Isso permite o acesso ao esquema de movimento do tema deCompositionLocalConsumerModifierNodes
, comcurrentValueOf(MotionTheme.LocalMotionScheme)
. (I014b1) - O construtor
ColorScheme
sem papéis de cor fixa foi descontinuado. Migre para o construtor que inclui funções fixas. (Iad0ee). - O componente de texto do M3 agora é compatível com
TextAutoSize
. (I7f524). - Adicione a API para criar variantes de tamanho de botão dividido e adicione exemplos. (Ice30b).
Correções de bugs
- Correção de um problema em que
Snackbar
eFloatingActionButton
eram posicionados incorretamente quando o modo de ponta a ponta estava ativado. O Scaffold agora aplica encartes horizontais corretamente a esses componentes. (Ib7c30, b/244400727) - Corrija o movimento
BottomSheet
de totalmente aberto para parcialmente aberto. OBottomSheet
agora usa o efeito rápido doMotionScheme
ao ocultar ou recolher e o efeito espacial padrão ao expandir. (Ifa46f, b/416063171) - O construtor
ColorScheme
sem funções de contêiner de superfície foi marcado como oculto e não é mais recomendado para uso. (Ia7237) - Removemos um requisito de
CircularWavyProgressIndicator
Size.minDimension > 0
, que costumava gerar uma exceção, para permitir mais flexibilidade. (Ic9418, b/377531195). - Os hiperlinks em
Text(AnnotatedString)
agora têm estilo Material por padrão. (I78288, b/339843816) - Correção de um problema em que a função
toShape()
noRoundedPolygon
estava armazenando em cache um caminho e causando um problema quando várias chamadascreateOutline
eram feitas com tamanhos diferentes. (I4026d).
Versão 1.4.0-alpha14
7 de maio de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha14
. A versão 1.4.0-alpha14 contém estas confirmações.
Mudanças na API
- Adicionado um novo elemento combinável
AppBarColumn
que funciona da mesma forma queAppBarRow
, mas para conteúdo disposto em uma coluna. (Iaf6bd). - Adição de itens máximos a
AppBarRow
. Isso é necessário para implementar corretamente a especificação material para barras de apps na parte de cima. (I92ce4). - Adição de um método em
TooltipScope
para receber olayoutCoordinates
da âncora. Descontinuação do métododrawCaret
porque os desenvolvedores podem usar esse novo método para receber os limites de âncoralayoutCoordinates
e criar uma forma adequada que contenha um cursor. (Ia2e12, b/329470609) - Adição do suporte a
java.time
para seletores de data: introdução de sobrecargasrememberDatePickerState/rememberDateRangePickerState
que aceitam objetos java.time (por exemplo,LocalDate
eYearMonth
iniciais). Também foram adicionadas funções de extensão aos objetos de estado para receber/definir valores usando tipos comoLocalDate
eYearMonth
. Requer a API 26 ou versões mais recentes ou desaçucaramento. (I70f29, b/266202516, b/281859606). - Adicione o elemento combinável
CenteredTrack
para usar um controle deslizante com uma faixa que começa no centro. (I5b1d6).
Correções de bugs
- Melhoramos o desempenho dos indicadores de progresso ondulados: os tipos lineares agora carregam ~8,5% mais rápido com ~11% menos alocações, enquanto os tipos circulares têm um aumento substancial de ~47% na velocidade e ~39% menos alocações. (I595d8).
Versão 1.4.0-alpha13
23 de abril de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha13
. A versão 1.4.0-alpha13 contém estas confirmações.
Mudanças na API
isAppearanceLightStatusBars
eisAppearanceLightNavigationBars
foram reintroduzidos emModalBottomSheetProperties
como parâmetros somente para Android. (Id4bc0)- Adicione um elemento combinável
AppBarRow
que processe o estouro de itens que caberiam fora dos limites. (I742bd). - Atualize as APIs
DatePicker
eDateRangePicker
para solicitar o foco ao mudar para um modo de entrada de data. Substituímos o parâmetro booleanorequestFocus
por um parâmetrofocusRequester
opcional que usa umFocusRequester
. (I14b69). - Remova o modificador e a origem da interação dos itens clicáveis e alternáveis padrão. Em vez disso, use como um detalhe de implementação. (I95ed6)
- Atualização do
ButtonGroup
para transbordar em um menu suspenso quando há muitos botões para caber na tela. (I7b88b)
Correções de bugs
- A BottomSheet agora consome encartes superiores quando é menor que o deslocamento atual. Isso permite que os usuários forneçam encartes superiores para comportamento expandido.
BottomSheetDefaults.windowInsets
agora incluiWindowInsets.safeDrawing.Top
. (I0ab67, b/321877275, b/336962418, b/342093067). - Ativadas animações de entrada/saída (aparecer/deslizar) para ícones/avatares iniciais e ícones finais de chips quando eles são adicionados ou removidos. Isso beneficia principalmente os chips selecionáveis (filtro, entrada), mas se aplica de maneira geral. (I9af21)
- Correção do comportamento incorreto do controle deslizante RTL causado por
LookaheadScope
. (Ieb152, b/408118041) - Correção da falha de
AppBar
na parte de baixo da tela relacionada à rolagem com uma interface do sistema oculta. (Ic6140, b/405996228)
Versão 1.4.0-alpha12
9 de abril de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha12
. A versão 1.4.0-alpha12 contém estas confirmações.
Mudanças na API
- Os parâmetros específicos do Android foram removidos de
ModalBottomSheetProperties
(Iab97f, b/362539765). - Introdução de funções de sobrecarga para padrões de tamanho da alça de arrastar (I0ed0d)
- Adicione novas funções
NavigationSuiteScaffold
eNavigationSuiteScaffoldLayout
para oferecer suporte a novos tipos de layout e adicionar suporte a um conteúdo de ação principal opcional. (Ib262a, b/353144478). - Descontinuar
Modifier.weight
com o parâmetro de preenchimento emButtonGroup
. Adicionar uma versão sem preenchimento. (Id32bb). - Renomeie
xSmall-
exLarge-
. Os padrões do componente IconButton agora escrevemextra
por extenso. (Ib6e0f). - Adicione novas funções
NavigationSuite
,NavigationSuiteItem
eNavigationSuiteColors
para oferecer suporte a novos tipos de layout. (I203d6) - Adicione um novo
NavigationSuiteTypes
e uma nova funçãonavigationSuiteType
que incluem essas opções de layout (If68f9).
Correções de bugs
- Agora,
ColorScheme.contentColorFor
mapeiasurfaceDim
paraonSurface
. (I8891a). - Atualizamos a implementação de
DateInputTextField
para resolver um problema em que o campo de entrada não refletia a data definida de forma programática. (I6c8d1, b/401143451) - Correção da ordem de foco do TalkBack para a coluna de navegação e a coluna de navegação ampla (I6cf6f, b/407048224).
Versão 1.4.0-alpha11
26 de março de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha11
. A versão 1.4.0-alpha11 contém estas confirmações.
Mudanças na API
- Atualização do uso de maiúsculas e minúsculas para propriedades combináveis em objetos padrão de botões e botões de alternância. Adicione métodos em
ToggleButtonDefaults
eButtonDefaults
para padding, formas, tamanho e espaçamento de ícones e estilo de texto recomendados, dependendo da altura do contêiner. (Iea69e). - As funções e constantes experimentais descontinuadas foram removidas do
FloatingToolbar
. (I8f339). - Os componentes de elevação agora compartilham uma interface comum e têm construtores e propriedades públicas. (Ibb172).
- Adicionar o modificador
animateWidth
emButtonGroupScope
, que precisará ser usado com os filhos do grupo de botões para animar corretamente as crianças. (Ia3bb6)
Correções de bugs
- Correção do padding da barra de ferramentas flutuante para garantir o equilíbrio visual durante o recolhimento e melhoria da flexibilidade para conteúdo maior. (I06c00).
Versão 1.4.0-alpha10
12 de março de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha10
. A versão 1.4.0-alpha10 contém estas confirmações.
Mudanças na API
- O uso de
TabRowDefaults.tabIndicatorOffset
foi descontinuado e substituído porTabIndicatorScope.tabIndicatorOffset
. (Ib36b3). - Correção de erro de digitação no padding de conteúdo pequeno nos padrões de botão. (I19bfe).
TabRow
eScrollableTabRow
foram descontinuados em favor das variantes primárias e secundárias de cada um. As linhas das guias principal e secundária têm melhor desempenho e são mais precisas de acordo com a especificação. (I918e2)rememberSliderState
erememberRangeSliderState
foram adicionados. (I8e384).- Adicionamos
shouldAutoSnap
aSliderState
para controlar o mecanismo de ajuste automático. Desativá-lo pode ser útil para animações personalizadas. (I07745) - A largura mínima da guia da linha de guias rolável agora é um parâmetro. As variantes de linha de guias primárias e secundárias não são mais experimentais. (If6f15, b/226665301).
- Tornou a classe
ExitAlwaysFloatingToolbarScrollBehavior
pública, permitindo a criação sem composição. (Ibf31c).
Versão 1.4.0-alpha09
26 de fevereiro de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha09
. A versão 1.4.0-alpha09 contém estas confirmações.
Mudanças na API
- Renomeie os campos de configuração de
DragHandle
no estado padrão, separe os estados pressionado e arrastado e torne os tamanhos padrão públicos. (I787b9). - Atualizações na API
TowRowsTopAppBar
. Removemos o parâmetro lambdaexpanded
e adicionamos parâmetros separados para as alturas expandida e recolhida. (Idd677, b/306697446, b/229134133, b/268068946).
Correções de bugs
- As barras de apps na parte de baixo agora observam o serviço de exploração por toque (por exemplo,
TalkBack
) e mantenha-os visíveis sempre que o serviço estiver ativado. (I4b34d)
Versão 1.4.0-alpha08
12 de fevereiro de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha08
. A versão 1.4.0-alpha08 contém estas confirmações.
Novos recursos
Adicionamos uma API
TimePickerDialog
que pode ser usada paraTimePicker
,TimeInput
ou para ter uma versão alternável. (Id2d83).Novas APIs da barra de pesquisa:
- As barras de pesquisa recolhidas e as "visualizações" de pesquisa expandidas agora são elementos combináveis separados.
SearchBar
representa uma barra de pesquisa no estado recolhido.ExpandedFullScreenSearchBar
eExpandedDockedSearchBar
representam a barra de pesquisa no estado expandido. Elas abrem em uma nova janela.SearchBarState
para controlar o estado da barra de pesquisaTopSearchBar
para adicionar o processamento de encartes e o comportamento de rolagem- Nova sobrecarga de
InputField
que usaSearchBarState
(Ie0723, b/261496232, b/283311462, b/350916229, b/352872248).
Mudanças na API
- Suporte à transformação do formato do canto dos botões de ícone ao pressionar. (I21843)
- As APIs de caixa de decoração/decorador de campo de texto não são mais experimentais. (I31d95).
- Adição de amostras e padrões para a variante conectada de
ButtonGroup
. (I5c8ce) - Faça com que o parâmetro de estado seja o último em
NavigationSuiteScaffold
eNavigationSuiteScaffoldLayout
. (I9cc7b)
Correções de bugs
- Adicionamos ações de acessibilidade personalizadas ao
FloatingToolbars
para que os serviços de acessibilidade possam expandir ou recolher todas as variações deFloatingToolbar
. A versão com FAB aplica isso ao FAB, enquanto a versão sem FAB aplica ao conteúdo principal. (I26420). - O
FloatingToolbars
agora observa o serviço de exploração por toque (por exemplo, TalkBack) e manter a barra de ferramentas expandida e visível sempre que o serviço estiver ativado. (I02172). - Foi corrigida uma falha nos indicadores de progresso e carregamento caso um
Float.NaN
seja transmitido como um progresso. (I4fa96, b/352364576)
Versão 1.4.0-alpha07
29 de janeiro de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha07
. A versão 1.4.0-alpha07 contém estas confirmações.
Novos recursos
- Adicionamos mais flexibilidade na personalização da aparência das caixas de seleção com uma nova API. Essa API fornece parâmetros de traço que permitem um controle maior sobre como a marca de seleção e o contorno da caixa de seleção são renderizados. (I65a88).
- Adição da API
TwoRowsTopAppBar
, uma alternativa mais personalizável às barras de apps médias e grandes para criar barras de apps superiores de duas linhas. Agora os desenvolvedores têm controle sobre o conteúdo de títulos e subtítulos nos estados recolhido e expandido, com alturas personalizáveis para cada estado. (I0be3c, b/306697446, b/229134133, b/268068946).
Mudanças na API
- Renomeamos uma variação experimental
BottomAppBar
paraFlexibleBottomAppBar
, oferecendo mais controle sobre a altura e a organização do conteúdo. (Iaa448) - Atualize a nomenclatura das propriedades no objeto padrão Button Group para
CapitalCase
. Atualize o nome deanimateFraction
para ser mais preciso em relação ao comportamento que ele representa. (I545cd) - Adição de sobrecargas para botões comuns que permitem formas animadas na interação de pressionar. Formas de botão em cache adicionadas. (I5ec20).
- Agora você pode controlar como um
FloatingToolbar
com FAB reage à rolagem fornecendo umFloatingToolbarScrollBehavior
. Para barras de ferramentas posicionadas ao longo de uma borda central (como centro superior ou inferior), recomendamos usar um comportamento de rolagem para ocultar todo o componente ao rolar e ter uma aparência mais limpa. Isso também evita que o FAB fique descentralizado, o que pode acontecer ao usar a flagexpanded
para recolher. (I33f67). - Atualiza as APIs experimentais
TopAppBar
para usarAlignment.Horizontal
em vez de umTopAppBarTitleAlignment
personalizado ao definir o alinhamento do título e do subtítulo. (I70ca2). SliderState#onValueChange
agora é público para dar mais controle ao usuário (I104eb)- Introduza
NavigationSuiteScaffoldState
para permitir a animação do componente de navegação. Também apresentamos sobrecargas deNavigationSuiteScaffold
eNavigationSuiteScaffoldLayout
que têm um parâmetro de estado. (I6a8c9, b/328674235)
Correções de bugs
- Mova as classes
IconButtonColors
eIconToggleButtonColors
deIconButtonDefaults.kt
de volta paraIconButton.kt
. (I3c233).
Contribuição externa
SliderState#isDragging
agora é público. (I8458a).
Versão 1.4.0-alpha06
15 de janeiro de 2025
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha06
. A versão 1.4.0-alpha06 contém estas confirmações.
Mudança de comportamento
- Adicionamos
displayCutout
ao grupo de encartes que os componentes do Material consideram por padrão para evitar que o conteúdo se sobreponha ao corte da tela. Essa é uma mudança de comportamento que vai afetar a forma como os componentes com reconhecimento de encarte se comportam em torno de um corte na tela. Isso inclui o valor padrão do parâmetroWindowInsets
para componentes do Material 3 compatíveis com encartes e os valoresWindowInsets
fornecidos nos objetos Defaults do componente para Material 2 e Material 3. Se essa mudança causar um comportamento indesejado, especifique manualmente o parâmetroWindowInsets
em cada componente. (I43ee9, b/362508045).
Mudanças na API
- Atualizações na API
TopAppBar
. Renomeie as barras de apps de cima médias e grandes com um subtítulo para*FlexibleTopAppBar
. Unificamos as variações de cor em uma única funçãoTopAppBarDefault.topAppBarColors()
e adicionamos um parâmetro de corsubtitle
para ser aplicado a um elemento combinável de legenda fornecido (I41b65). - Remoção da API
WideNavigationRailArrangement
em favor daArrangement.Vertical
(Id0341) - Adicione um novo
VerticalSlider @Composable
. (I2bfba). - Adicione uma nova faixa
@Composable
que permite especificar cantos e ícones de faixa externos personalizados. (I436a4). - Atualize as APIs da barra de ferramentas flutuante para usar o objeto
FloatingToolbarColors
em vez de uma única cor de contêiner. (I9a054). - Adição e uso da nova anotação experimental
ExperimentalMaterial3ComponentOverrideApi
(Ia1eaf). Modifier.indicatorLine
agora usa uma forma para o campo de texto processar o corte. (I8c5f3, b/380704151)- Renomeie as funções experimentais
FloatingAppBar
paraFloatingToolbar
(I1dbf8). - Adicionado um novo
floatingToolbarVerticalNestedScroll
que pode ser anexado a um contêiner rolável para atualizar o estado de expansão da barra de ferramentas flutuante com base em um movimento de rolagem que cruza um limite. (I6d65f). - Apresentamos uma nova API para criar uma barra de ferramentas flutuante com um botão de ação flutuante (FAB) anexado. A API oferece opções de personalização flexíveis, permitindo organizar a barra de ferramentas horizontal ou verticalmente e colocar o FAB no início ou no fim dela. (I9e350).
Correções de bugs
- Correção de um problema de acessibilidade do snackbar que fazia com que ele se anunciasse ao ser dispensado quando
TalkBack
estava ativado. (/I9db53)
Contribuição externa
BasicTooltip
comum na fundação eBasicTooltip/Tooltip
no material3. (Ifc2e6).
Versão 1.4.0-alpha05
12 de dezembro de 2024
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha05
. A versão 1.4.0-alpha05 contém estas confirmações.
Mudanças na API
- Substitua o tipo no valor
WideNavigationRailState.current/target
por uma enumeração para melhorar a legibilidade (I2d6ab). SplitButton
mude a API Shape da classe de dados para a classe de compatibilidade binária. (I53812)- Adicionamos uma API de dica com um parâmetro
onDismissRequest
para que os criadores possam decidir o que acontece quando um usuário clica fora da dica. A API antiga que não contém esse novo parâmetro foi descontinuada. (I99aef). - Mude o nome de
opticalCentering
parahorizontalCenterOptically
. Tornar o modificador interno. Substitua o parâmetro de padding pelo deslocamento máximo de início e fim. (I0b904). - Mude
WideNavigationRailState
para ter o valor atual/de destino e remova os enums em favor do booleano. (Idfa29, b/356039090). - Adição do
NavigationBarItemComponentOverride
. (I3a06a).
Correções de bugs
- Corrigimos os comportamentos da barra de apps de cima e de baixo para mudar de cor de forma confiável quando o conteúdo é rolado até o fim. (Idc4e8, b/293665988).
- As funções de comportamento de rolagem para barras de apps na parte de cima e de baixo agora retornam um comportamento memorizado para ter uma performance melhor em recomposições. (I0fdbe, b/207957336).
- O parâmetro do modificador agora é aplicado depois dos modificadores internos, como comportamento de arrastar e semântica, em vez de antes. Isso afeta a ordem em que os modificadores são aplicados. (I8d83f).
- A página inferior expandida permanece assim quando o tamanho muda. (I2870b, b/324934884)
- Corrigir o roteamento de flags da barra de status e de navegação para propriedades de janelas. (Ie674d, b/362539765).
- Mova o parâmetro de modificador para a raiz dos scaffolds, conforme documentado. Isso alinha a implementação com o M2. (I0235e, b/372311595)
Contribuição externa
- Função
DatePickerDialog
comum. (I7dced).
Versão 1.4.0-alpha04
13 de novembro de 2024
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha04
. A versão 1.4.0-alpha04 contém estas confirmações.
Mudanças de comportamento
- Reverta as mudanças de cor introduzidas em aosp/3212478 para
iconButtonColors
,iconToggleButtonColors
,outlinedIconButtonColors
,outlinedIconToggleButtonColors
eoutlinedIconToggleButtonBorder
. Movemos o comportamento agora revertido para um novo conjunto de funções chamadoiconButtonVibrantColors
e assim por diante para enfatizar as cores de alto contraste que estão sendo retornadas. (Iffd8d)
Novos recursos
- Apresentação do componente
VerticalDragHandle
(I6c770)
Mudanças na API
DismissibleModalWideNavigationRailDefaults
foi renomeado comoModalWideNavigationRailDefaults
. (I8e877).- Adição do
NavigationBarComponentOverrides
. (I8a3f3). - Adição do
NavigationRailComponentOverride
. (I83e13). - Introduza
WideNavigationRailState
para lidar com o recolhimento/expansão da barra lateral, permita queModalWideNavigationRail
seja dispensável e excluaDismissibleModalWideNavigationRail
. (I88568) - Adicione padrões de tamanho xSmall, medium, large e xLarge aos padrões do botão de alternância. (Ie95d1).
- Adicione padrões de tamanho xSmall, medium, large e xLarge aos padrões de botão. (If8b6d).
Correções de bugs
- A cor do ícone final do filtro de chip foi atualizada de "Primária" para
OnSurfaceContainer
, de acordo com a especificação. Todas as cores de contorno do chip foram atualizadas de "Contorno" para "Variante de contorno", de acordo com a especificação. (I68bd4)
Versão 1.4.0-alpha03
30 de outubro de 2024
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha03
. A versão 1.4.0-alpha03 contém estas confirmações.
Mudanças na API
- O construtor
SheetState
com densidade foi descontinuado em favor dos limites de posição e velocidade. (Ifd16e). - Adição de
rememberTooltipPositionProvider
, que contém uma lógica de posicionamento atualizada. Os métodosrememberPlainTooltipPositionProvider
erememberRichTooltipPositionProvider
foram suspensos. (Ie66e2). - Outros
ModalBottomSheetProperties
permitem a personalização das cores da barra de status e de navegação. Por padrão, eles são atualizados com base na cor do conteúdo, e não no status do tema escuro do sistema. (Ib874e, b/362539765) - Melhoramos a experiência de entrada para seletores de data: no modo de entrada, o campo de texto de data fica em foco para entrada de texto imediata. A mudança adiciona um parâmetro
requestFocus
aoDatePicker
e aoDateRangePicker
. Você pode evitar um foco transmitindofalse
. (I12d09, b/286399710, b/340102743) - Armazenar em cache os padrões de forma no objeto Shape. Criando os padrões de forma
@Composable
para o botão de alternância. Compactar as formas em uma forma padrão, já que as variantes apontam para o mesmo arquivo de token. (Iaa014).
Correções de bugs
- Otimize o comportamento do Scaffold
contentPadding
para evitar sempre recompor o conteúdo do corpo quando ocontentPadding
muda. (I8c8e2, b/373904168) TextFieldLabelScope
progress
foi renomeado comolabelMinimizedProgress
TextFieldLabelPosition
Default
renomeado comoAttached
. Os membros da interface foram removidos. (If75c6).- Correção de um problema com o
DatePicker
no modo de entrada em que erros de validação podiam mudar a altura do componente. (I2e229, b/280462363). - Faça com que o controle deslizante material mude de valor quando as teclas de controle forem pressionadas. (I1c442).
Versão 1.4.0-alpha02
16 de outubro de 2024
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha02
. A versão 1.4.0-alpha02 contém estas confirmações.
Mudanças na API
- Atualizações nos seletores de data para garantir o uso consistente da localidade em todo o
DatePicker
eDateRangePicker
ao definir uma localidade diretamente por umDatePickerState
ou umDateRangePickerState
. Ao definir localidades diretamente para o estado, é sua responsabilidade garantir que os textos de título e manchete sejam localizados de acordo com a localidade padrão da plataforma. (I37073, b/326490763, b/321657276). - O
SheetState.isAnimationRunning
agora está exposto. (I9a3d7). - Agora, os
DatePickerColors
têm precedência sobre cores conflitantes definidas nos estilos de texto de tipografia do tema. Essa atualização também ajusta a posição do parâmetrocolor
nas funções do seletor de data e apresenta um parâmetrocontentColor
para personalizar as cores do texto do cabeçalho e do título. (I30d03, b/347031394) - Renomeie
SplitButton
paraSplitButtonLayout
e remova as APIs de variantes de corSplitButton
. As variantes serão alcançadas reutilizando as variantes de botão fornecidas porSplitButtonDefaults
. (I44c36). ModalBottomSheet
agora tem o parâmetrosheetGestureEnabled
(I856cb, b/288211587).- Renomeamos
standardMotionScheme
eexpressiveMotionScheme
para "padrão" e "expressivo". Agora, as duas funções podem ser acessadas pelo objeto complementarMotionScheme
chamandoMotionScheme.standard()
eMotionScheme.expressive()
. (Iceccf). - Adição do parâmetro
maxWidth
às dicas simples e avançadas. O padrão é a especificação de design de 200 dp para dicas simples e 320 dp para dicas avançadas. (I30ce9).
Correções de bugs
- Os
DatePicker
eDateRangePicker
agora atualizam corretamente o mês exibido quando definidos pelodisplayedMonthMillis
do estado. (If9e47, b/333414302) - O conteúdo do
ModalBottomSheet
agora move o conteúdo para longe da barra de status. (I5114c, b/321877275, b/336962418, b/342093067). - [Bottom Sheet] Mude a prioridade do callback para
PRIORITY_DEFAULT
para permitir que o teclado IME seja dispensado primeiro. (I447fb) - Correção de falhas no
DatePicker
e noDateRangePicker
quando o ano mínimo selecionável é definido como um ano futuro. (I78656, b/319395747) - Correção de um problema no seletor de datas para atualizar a interface quando uma instância
SelectableDates
atualizada é aplicada. (Iad59a, b/290135807, b/339898760)
Versão 1.4.0-alpha01
2 de outubro de 2024
Lançamento de androidx.compose.material3:material3-*:1.4.0-alpha01
. A versão 1.4.0-alpha01 contém estas confirmações.
Mudanças de comportamento
- A biblioteca não adiciona mais uma dependência a
material-icons-core
. Portanto, se o projeto dependia disso, você terá que adicionar explicitamente essa dependência aos arquivosbuild.gradle[.kts]
. (I735ff, b/349894318) - A cor do rótulo ativo de
NavigationBarItem
eNavigationRailItem
muda deonSurface
parasecondary
para melhorar a usabilidade, o contraste de cores e a coerência no sistema (Ibc297). Para reverter ao comportamento anterior, copie as cores padrão e mudeselectedTextColor
paraMaterialTheme.colorScheme.onSurface
. - Os componentes do Material 3 agora usam o novo
MotionScheme
para definir o movimento. (Ie0f93). - Mudanças de movimento do indicador de progresso circular indeterminado (I3c07e)
- Atualize
OutlinedIconButtonColors
eOutlinedIconToggleButtonColors
para melhorar o contraste de cores. (I2743d) - Atualização da cor do contêiner e do conteúdo para
FilledIconToggleButtonColors
eFilledTonalIconToggleButtonColors
. (Ic5d0f). - A cor da borda
OutlinedButton
foi atualizada deoutline
paraoutlineVariant
. (057f00)
Mudanças na API
- Adição de um parâmetro
reverseLayout
opcional à funçãoenterAlwaysScrollBehavior
doTopAppBar
para oferecer melhor suporte a conteúdo definido com umreverseLayout
. (I4e0e5). - O
SegmentedButton
agora é compatível com o argumentocontentPadding
. (I5ad91, b/358414376). PullToRefreshState
não tem mais implementação padrão paraisAnimating
(I6a593).- Adicionadas novas sobrecargas de
TextField
eOutlinedTextField
do Material que usamTextFieldState
. Adição de APIs de caixa de decoração compatíveis comTextFieldDecorator
. (If13a1) - Adição de parâmetro para controlar o
labelPosition
do campo de texto. UsaralwaysMinimize
permite que o padrão de interface mostre um rótulo e um marcador de posição em um campo de texto ao mesmo tempo, mesmo quando o campo não está em foco. (I1ef2c) - Adição de
SecureTextField
eOutlinedSecureTextField
do Material para campos de entrada de senha. (I7e22d). - Adicionado um escopo aos rótulos de campo de texto para consultar o progresso da animação. (If5ec8).
- Adiciona compatibilidade com
MotionEvent.CLASSIFICATION_DEEP_PRESS
às dicas. (I62e6a). - O
isAfternoon
deTimePickerState
agora é um valor de extensão em vez de uma variável na interface, renomeado comoisPm
(I89a97). - Atualização da classe de tipografia para oferecer suporte a escalas tipográficas enfatizadas. (Ifa13c).
- Adição da API
ModalWideNavigationRail
e renomeação das APIsModalExpandedNavigationRail
paraDismissibleModalWideNavigationRail
. (Ic9118). - Atualizamos o
FloatingAppBarScrollBehavior
para calcular automaticamente oscreenOffset
e não exigir um@Composable
. (Idf349) - Atualizações na API
LoadingIndicator
para corrigir a nomenclatura no objeto de padrões. Adição de uma constanteLoadingIndicatorElevation
noPullToRefresh
. (I1d72b) - Atualizações na API
LoadingIndicator
para corrigir a nomenclatura no objeto de padrões. Adição de uma constanteLoadingIndicatorElevation
noPullToRefresh
. (I1d72b) - Adição de parâmetros
amplitude
ewaveSpeed
às variações indeterminadas deLinearWavyProgressIndicator
eCircularWavyProgressIndicator
. (I2a0c5). - Suporte para mudar o formato de um botão de alternância de ícone com base no estado pressionado ou marcado. (Ibc781).
- Atualização da classe de tipografia para oferecer suporte a escalas tipográficas enfatizadas. (Ifa13c).
- A forma do
SplitButton
muda com base no estado padrão / pressionado. A APIAnimatedTrailingButton
foi removida porque a APITrailingButton
pode oferecer as mesmas personalizações (I95066). - Adicione um modificador para animar a exibição e o ocultamento do FAB, por exemplo, quando o conteúdo rolar. (I8338d).
- Adição de formas e espaçamento de grupos de botões conectados a
ButtonGroupDefaults
para serem usados em uma amostra. (I68e30). - O botão dividido adiciona padding horizontal para o botão final e ativa o centralização óptica calculada com base nas diferenças de canto inicial e final (I122e2).
- Apresentamos um novo
MotionScheme
do Material para permitir a definição de um esquema para o movimento do componente. O esquema é definido peloMaterialTheme
. (Id50c2).
Correções de bugs
- Aplique o índice de navegação por foco correto aos elementos combináveis filhos
Scaffold
. A ordem étopBar
,bottomBar
, fab, content, snackbar. (I5936b). - Foi corrigido um problema no
DatePicker
e noDateRangePicker
em que, em determinados locais e format-skeletons, alguns elementos de data (por exemplo, nomes de meses) não começavam com uma letra maiúscula. (I1430f). - Integração de tokens de componentes do FAB e do menu do FAB (pequenas atualizações visuais em padding e texto) (Ib57f3)
ModalBottomSheet
agora é o primeiro na ordem de navegação semântica, seguido pelo efeito de tela esmaecida. (I436f9, b/358594665).- Foi corrigido o problema em que a barra de apps inferior não desaparecia completamente ao rolar a tela abaixo da pílula de navegação no modo de ponta a ponta (I3ee21).
Compose Material3: versão 1.3
Versão 1.3.2
9 de abril de 2025
Lançamento de androidx.compose.material3:material3-*:1.3.2
. A versão 1.3.2 contém estas confirmações.
Correções de bugs
ListItem
corrige o cálculo da altura intrínseca, reservando agora a quantidade adequada de espaço no Layout.- Remova o padding excessivo do rótulo
NavigationBarItem
, alinhando corretamente com a especificação. - Corrige o layout
TabRow
no modo RTL.
Versão 1.3.1
30 de outubro de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.1
. A versão 1.3.1 contém estas confirmações.
Correções de bugs
- Os
DatePicker
eDateRangePicker
agora atualizam corretamente o mês exibido quando definidos pelodisplayedMonthMillis
do estado. (If9e47, b/333414302) - Correção de falhas no
DatePicker
e noDateRangePicker
quando o ano mínimo selecionável é definido como um ano futuro. (I78656, b/319395747) - Correção de um problema no seletor de datas para atualizar a interface quando uma instância
SelectableDates
atualizada é aplicada. (Iad59a, b/290135807, b/339898760) - Mude a prioridade do callback de volta usada pelas folhas de baixo para
PRIORITY_DEFAULT
para permitir que o teclado IME seja dispensado primeiro. (I447fb)
Versão 1.3.0
4 de setembro de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0
. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
Principais recursos da versão 1.3.0
Novos componentes do Material Design 3
- Carrossel
HorizontalMultiBrowseCarousel
eHorizontalUncontainedCarousel
Melhorias nos componentes atuais do Material Design 3.
- O [
ModalBottomSheet
] agora é compatível com a volta preditiva no Android U+ (Iccf32, b/281967264, b/304850357). - O [
SearchBar
] agora oferece suporte à volta preditiva no U+ (I657f8). - A gaveta de navegação (
ModalDrawerSheet
eDismissibleDrawerSheet
) agora oferece suporte à volta preditiva no U+ como uma opção de ativação (Ie5b0b). - O
DropdownMenu
agora oferece suporte a cores, formas, elevações e bordas personalizadas. (I8e981,b/289554448, b/301887035, b/283654243). - Atualizamos o controle deslizante para melhorar a acessibilidade adicionando um indicador de lacuna e parada. (I3058e).
- O
ProgressIndicator
foi atualizado para melhorar a acessibilidade com a adição de um indicador de lacuna e parada. (I21451). - Adicionamos um cursor padrão para a dica avançada e suporte a um cursor personalizado para ser desenhado com a âncora
LayoutCoordinates
. (Ifd42c) Mudanças interruptivas - Novas APIs de puxar para atualizar:
PullToRefreshState
simplificado para usar valores fracionários em vez de unidades Dp.- O estado
isRefreshing
é controlado pelo usuário, e não porPullToRefreshState
. - Separação da conexão de rolagem aninhada de
PullToRefreshState
. Ele é processado pelo novoPullToRefreshBox
ouModifier.pullToRefresh
. - Essa atualização é uma mudança interruptiva para APIs experimentais anteriores. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) Mudanças significativas visuais
- Atualize a sobreposição do estado de foco para 0,1f e garanta contraste de cor suficiente. (I7ea77).
- Pequenos ajustes nos padrões de cores de superfície e plano de fundo em
lightColorScheme
edarkColorScheme
. (I9db52). - Atualizamos as cores do controle deslizante e do
ProgressIndicator
para seguir as novas especificações de contraste não textual. (I26807). - As variantes
SurfaceContainer
agora são usadas por componentes. Os componentes que calculavam formalmente a cor comSurface
eTonalElevation
agora usam funçõesSurfaceContainer
por padrão, que não são afetadas pela elevação tonal. (b/304584161) - As funções de superfície e contêiner de superfície foram ligeiramente ajustadas, oferecendo mais tonalidade em temas claros e escuros. (I677a5).
- As APIs experimentais foram promovidas para estáveis.
- Melhorias no desempenho
Versão 1.3.0-rc01
21 de agosto de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-rc01
. A versão 1.3.0-rc01 contém estas confirmações.
Correções de bugs
ModalBottomSheet
agora é o primeiro na ordem de navegação semântica, seguido pelo efeito de tela esmaecida. (I436f9, b/358594665).
Versão 1.3.0-beta05
24 de julho de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-beta05
. A versão 1.3.0-beta05 contém estas confirmações.
- Correção de um problema em que o conteúdo do
BottomSheet
ficava faltando ou cortado no Android N e O (a10a2d) - Aumentamos os limites semânticos do controle deslizante para que o
TalkBack
mostre corretamente os indicadores de foco ao redor das miniaturas. (0b5a1d)
Versão 1.3.0-beta04
26 de junho de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-beta04
. A versão 1.3.0-beta04 contém estas confirmações.
Versão 1.3.0-beta03
12 de junho de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-beta03
. A versão 1.3.0-beta03 contém estas confirmações.
Contribuição externa
- Disponibilize
androidx.compose.material3.DropdownMenu
do conjunto de fontes comum. (If62c0)
Versão 1.3.0-beta02
29 de maio de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-beta02
. A versão 1.3.0-beta02 contém estas confirmações.
Mudanças na API
- O
Modifier.pullToRefreshIndicator
oferece suporte a elevação. Atualize as APIs Pull To Refresh para que "enabled" seja um booleano, em vez de um lambda. Suporte ao alinhamento de conteúdo emPullToRefreshBox
(I75679). - Transformar
TooltipScope
em uma interface sealed e criar uma implementação interna para usar emTooltipBox
e Label. (I3833e). - Adição de dois novos modificadores a
CarouselItemScope
:maskClip
emaskBorder
. Assim, é possível adicionar facilmente uma forma e uma borda a qualquer item do carrossel (Id67a1). TimePickerState
agora é uma interface e permite definir a hora (I88546).- API atualizada para estilizar os links: movemos o
TextLinkStyles
para oTextStyle
e removemos oTextDefaults
do material. (I5477b)
Correções de bugs
- Os ícones da barra de status e de navegação do
ModalBottomSheet
agora respondem ao status do tema escuro. (Ie1fe7, b/338342149). - Adição da semântica de fechamento da página ao scrim
ModalBottomSheet
. (0e61cb,b/328801864)
Contribuição externa
- Disponibilizar
androidx.compose.material3.AlertDialog
do conjunto de origem comum (Ia33f5) - Disponibilizar
ModalBottomSheet
do conjunto de origem comum (Id7cc7)
Versão 1.3.0-beta01
14 de maio de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-beta01
. A versão 1.3.0-beta01 contém estas confirmações.
Mudanças na API
- Usando
DpSize
em vez deCaretProperties
. RemovendoCaretProperties
.CaretScope
foi renomeado comoTooltipScope
. (Id9a76). - Atualizamos a API para receber links com tema do Material Design em texto. Especificamente, os métodos foram removidos do
TextDefaults
para construirLinkAnnotations
temáticos e analisar HTML com links temáticos. Em vez disso, adicionamos uma classeTextLinkStyles
que permite estilizar os links como um parâmetro para o elemento combinável Text. (I31b93).
Versão 1.3.0-alpha06
1º de maio de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha06
. A versão 1.3.0-alpha06 contém estas confirmações.
Mudanças importantes
Novas APIs de puxar para atualizar:
PullToRefreshState
simplificado para usar valores fracionários em vez de unidades Dp.- O estado
isRefreshing
é controlado pelo usuário, e não porPullToRefreshState
. - Separação da conexão de rolagem aninhada de
PullToRefreshState
. Ele é processado pelo novoPullToRefreshBox
ouModifier.pullToRefresh
. - Essa atualização é uma mudança interruptiva para APIs experimentais anteriores. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683).
Mudanças na API
RippleConfiguration#isEnabled
foi removido, eLocalRippleConfiguration
foi definido como anulável. Para desativar um efeito de ondulação, em vez de fornecer umRippleConfiguration
comisEnabled = false
, forneçanull
paraLocalRippleConfiguration
. (I22725).- O
ModalBottomSheet
desenha o scrim com mais precisão sobre a barra de status quando o modo de ponta a ponta está ativado. O conteúdo da página inferior modal agora pode consumir encartes de janela, permitindo conteúdo visível acima da barra de navegação. O parâmetroModalBottomSheet
windowInsets
foi renomeado comocontentWindowInsets
para especificar onde os encartes serão aplicados. Eles não estão mais vinculados à lógica da janela. O tipocontentWindowInsets
foi mudado para uma função que retornaWindowInsets
, permitindo que ele seja resolvido na nova janela. (I39630, b/274872542, b/300280229, b/290893168). PrimaryScrollableTabRow
eSecondaryScrollableTabRow
agora usam um layout personalizado em vez de subcomposição, o que deve melhorar o desempenho. (I991e0).- Os links de texto agora têm uma opção de estilo de estado pressionado, além de estilo normal, pairado e focado. Os métodos
TextDefaults
têm um argumentopressedStyle
para oferecer suporte a isso. (Ic473f, b/139312671).
Correções de bugs
- Os âncoras de arrastar do gaveta de navegação agora correspondem à largura do
drawerContent
. (Ibc72f, b/245355396). - O padding superior
OutlinedTextField
do rótulo agora considera o tamanho da fonte do sistema. (Idc781). - Localização fixa do pacote
CalendarLocale
. (Ifa235). - [Volta preditiva] Atualize as animações de volta preditiva para usar a curva de interpolação (0,1, 0,1, 0, 1) (I2591a)
Versão 1.3.0-alpha05
17 de abril de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha05
. A versão 1.3.0-alpha05 contém estas confirmações.
Novos recursos
SearchBar
eDockedSearchBar
têm novas sobrecargas que usam um parâmetro de campo de texto. Isso permite estilizar o campo de texto separadamente do restante da barra de pesquisa, além de transmitir campos de texto personalizados. O campo de texto da implementação atual foi disponibilizado comoSearchBarDefaults.InputField
. (I50c73, b/275074248, b/278773336, b/326627700).- A lambda
drawTick
foi adicionada à API pública para personalizar os ticks, se necessário (I0c048).
Mudanças na API
- Os links de texto agora têm uma opção de estilo de estado pressionado, além de estilo normal, pairado e com foco (I5f864, b/139312671).
- O
CarouselItemInfo
foi atualizado para expor um Rect de máscara que está cortando o item (I785d8). - Remoção de
BasicTooltipState
da API pública do Material 3. A funcionalidade dele é combinada comTooltipState
até que oBasicTooltip
do Foundation seja estabilizado. (Icda29) - Adição de um objeto
TextDefaults
que contém métodos para construir umLinkAnnotation
e analisar strings marcadas com HTML que aplicamMaterialTheme
aos links (I98532, b/139312671). ExposedDropdownMenuBoxScope
não permite mais subclasses. Os menus suspensos expostos agora têm umMenuAnchorType
que precisa ser transmitido paramenuAnchor
para oferecer suporte a uma acessibilidade melhor. Isso deve ser usado em vez de transmitirfocusable
paraExposedDropdownMenu
, que agora está descontinuado.menuAnchor
tem um novo parâmetro para controlar o estadoenabled
. (I55ee6, b/257209915, b/308840226).- Corrigimos a cor da borda de
OutlinedButton
quando desativada. Adicionada sobrecargaButtonDefaults.outlinedButtonBorder("enabled")
que usa o estado ativado. (Ie650b, b/318461363). - Adicionamos uma nova classe
CarouselItemInfo
para ajudar os clientes a receber informações sobre os tamanhos dos itens. (I9070c). - O construtor
ColorScheme
sem contêineres de superfície foi descontinuado. Migre para o construtor que inclui contêineres de superfície. (I35c11). - [Destaque]
TextFieldDefaults
ContainerBox
foi renomeado comoContainer
. (Ie8d3b).
Correções de bugs
- O
BottomSheetScaffold
não vai mais rolar de uma rolagem aninhada sesheetSwipeEnabled
for "false". (I5e1c1, b/306464779). - Removemos algumas anotações
ExperimentalMaterial3Api
OptIn emIconButtonSamples.kt
. (I111d1).
Versão 1.3.0-alpha04
3 de abril de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha04
. A versão 1.3.0-alpha04 contém estas confirmações.
Novos recursos
- Foram adicionadas duas versões experimentais do carrossel do Material 3:
HorizontalMultiBrowseCarousel
eHorizontalUncontainedCarousel
(I88d64). - Atualização da gaveta de navegação do Compose M3 (
ModalDrawerSheet
eDismissibleDrawerSheet
) para oferecer suporte à volta preditiva no U+ como inclusão (Ie5b0b) - Adição de uma nova API no ícone para permitir a transmissão de tonalidade de cor como lambda e evitar a recomposição. (I5b5a2).
- As APIs da barra de apps agora oferecem suporte a alturas personalizadas para seções fixas e recolhíveis. (Ib8b0c, b/323403446)
Mudanças na API
- As APIs da barra de apps agora oferecem suporte a alturas personalizadas para seções fixas e recolhíveis. Correção de um problema que fazia as barras de apps de linha única na parte de cima serem recompostas muitas vezes ao rolar o conteúdo. Foi resolvido um problema em que o
MediumTopAppBar
truncava títulos em dispositivos com configurações de fonte/tela grandes. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676). SegmentedButton
e as APIs associadas agora estão estáveis (I8a158)SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
eSwipeToDismissBoxValue
agora estão marcados como estáveis. (I5f000)- Remoção das APIs e enums
DismissDirection
eDismissValue
descontinuados. (I89ccd). - Adição de uma tag experimental ao objeto complementar
CarouselState
do carrossel. (I94154). LocalMinimumInteractiveComponentEnforcement
foi descontinuado eLocalMinimumInteractiveComponentSize
foi introduzido para substituí-lo. (I7a7ac).- O construtor
SearchBarColors
agora é público. (I769ca) - Adição de um parâmetro
gesturesEnabled
aSwipeToDismissBox
. (Idc59f, b/324170119). - Remoção das APIs de campo de texto marcadas como descontinuadas e experimentais. (I1305f).
Versão 1.3.0-alpha03
20 de março de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha03
. A versão 1.3.0-alpha03 contém estas confirmações.
Mudanças visuais importantes
- Atualize a sobreposição do estado de foco para 0,1f e garanta contraste de cor suficiente. (I7ea77).
- Pequenos ajustes nos padrões de cores de superfície e plano de fundo em
lightColorScheme
edarkColorScheme
. (I9db52).
Novos recursos
- Adição de parâmetros para personalizar
ExposedDropdownMenu
. Em particular, os menus agora têm um parâmetrofocusable
(padrãotrue
) que precisa ser definido comofalse
ao trabalhar com campos de texto editáveis. (I4184c, b/323694447, b/278609042)
Mudanças na API
- A flag
ScaffoldSubcomposeInMeasureFix
foi removida. (Ie2a4b). - Agora,
NavigationRailItemColors
está marcado como@Immutable
(If6112, b/327660613). - Agora,
NavigationBarItemColors
está marcado como@Immutable
(I42a30, b/298064514) - Reordene os parâmetros no elemento combinável Slider Track. (I9f315).
ExposedDropdownMenu
agora é implementado usandoPopup
. O comportamento deve ser o mesmo, exceto que os menus com foco e campos de texto editáveis podem ser dispensados ao digitar no teclado.
Correções de bugs
- As funções de superfície e contêiner de superfície foram ligeiramente ajustadas, oferecendo mais tonalidade em temas claros e escuros. (I677a5).
- Atualizamos as cores do controle deslizante e do
ProgressIndicator
para seguir as novas especificações de contraste não textual. (I26807). - Atualize a sobreposição do estado de foco para 0,1f e garanta contraste de cor suficiente. (I7ea77).
- Pequenos ajustes nos padrões de cores de superfície e plano de fundo em
lightColorScheme
edarkColorScheme
. (I9db52).
Versão 1.3.0-alpha02
6 de março de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha02
. A versão 1.3.0-alpha02 contém estas confirmações.
Mudanças na API
- Deixando os estados do controle deslizante estáveis novamente. Transformando
State.onValueChangeFinished
em um val novamente. EnvolvendoonValueChangeFinished
em umrememberUpdatedState
. (I82ab2, b/322269951) - Os componentes de navegação agora usam as novas funções
SurfaceContainer
.DrawerDefaults
agora fornece atributosstandardContainerColor
emodalContainerColor
distintos.DrawerDefaults.ModalDrawerElevation
agora é0.dp
. (I7fbac). - Removendo
@Stable
dos estados deSlider
porque estamos mudandostate.onValueChangeFinished
para umvar
. (Ied34a, b/322269951). - A especificação de animação
ModalBottomSheet
eStandardBottomSheet
agora é umTweenSpec
, atualizado de uma animação de mola. Isso resolve um problema com um overshoot visível. Os construtoresSheetState
obsoletos sem densidade foram removidos. (I7babc, b/285847707).
Correções de bugs
- As variantes
SurfaceContainer
agora são usadas por componentes. Os componentes que calculavam formalmente a cor com Surface eTonalElevation
agora usam funçõesSurfaceContainer
por padrão, que não são afetadas pela elevação tonal. (b/304584161) - Correção de um bug que fazia com que a cor do contêiner desativado e não selecionado do
ElevatedFilterChip
fosse preta. (I400e6, b/322407043) - Correção do indicador de progresso indeterminado quando o progresso é 0 (Id6582)
- Correção de um problema com
Slider
eRangeSlider
no layout RTL (Iab0e1) - Adição de
SliderRangeTolerance
para o cálculo do intervalo do controle deslizante, já que o arredondamento de ponto flutuante pode ser impreciso. (Ic918a, b/324934900) - Confira se o
DatePickerDialog
mostra os botões ao aninhar umDateRangePicker
ou ao exibir qualquer tipo de seletor de data em telas pequenas com fontes maiores. (Ie4758, b/325107799, b/277768544). - O
Menu
agora usa a funçãoSurfaceContainer
para a cor do contêiner.MenuDefaults.TonalElevation
agora é0.dp
. (I135b7). - O
TextField
agora usa a funçãoSurfaceContainerHighest
para a cor do contêiner. (I4dced). - Os ícones elevados agora usam a função
SurfaceContainerLow
(I7cd2f). - A cor do contêiner
DatePicker
agora éSurfaceContainerHigh
.DatePickerDefaults.TonalElevation
agora é0.dp
. (Ida753). - Atualiza a cor do contêiner e da alça de arrastar das folhas de baixo. (I72a0a)
- A cor do contêiner
RichTooltip
agora éSurfaceContainer
. (Ia8b45). - A cor do contêiner
SearchBar
agora éSurfaceContainerHighest
.SearchBarDefaults.TonalElevation
agora é0.dp
. (I88604). - Atualiza a chave desativada e as faixas/ícones não selecionados para aproveitar a função de cor
SurfaceContainerHighest
. (I7687a) - A cor do contêiner
AlertDialog
agora éSurfaceContainerHigh
. (Ie0433). - A cor do contêiner
BottomAppBar
agora éSurfaceContainer
. A coronScroll
deTopAppBar
agora éSurfaceContainer
. (I41630). - A cor do contêiner
ElevatedCard
agora éSurfaceContainerLow
. A cor do contêiner deFilledCard
éSurfaceContainerHighest
. (I35141) - A cor do contêiner
ElevatedButton
agora éSurfaceContainerLow
. OsFilledIconButton
não selecionados agora têm uma cor de contêinerSurfaceContainerHighest
. (I792c9). - Atualiza a cor do contêiner
TimePicker
e a função de cor do mostrador do relógio paraSurfaceContainerHighest
. (I43b93).
Versão 1.3.0-alpha01
21 de fevereiro de 2024
Lançamento de androidx.compose.material3:material3-*:1.3.0-alpha01
. A versão 1.3.0-alpha01 contém estas confirmações.
Novos recursos
- Atualização do
ModalBottomSheet
do Compose M3 para oferecer suporte ao Predictive Back no U+ (Iccf32, b/281967264, b/304850357) - Atualização do
SearchBar
do Compose M3 para oferecer suporte à volta preditiva no Android U e versões mais recentes (I657f8). - Atualizamos o controle deslizante para melhorar a acessibilidade adicionando um indicador de lacuna e parada. (I3058e).
- O
ProgressIndicator
foi atualizado para melhorar a acessibilidade com a adição de um indicador de lacuna e parada. (I21451). - Adição de um cursor padrão para a dica avançada. A nova API de dica avançada agora permite que um cursor personalizado seja desenhado com base na âncora
LayoutCoordinates
. (Ifd42c).
Mudanças de comportamento
- Os componentes do Material foram migrados para usar as novas APIs de ondulação e não consultam mais
RippleTheme
.
Mudanças na API
- A diversão
drawStopIndicator
agora está disponível publicamente. (I3f59f). - Marcar a função
formatWithSkeleton
doDatePicker
como interna (Ic65dc) - O
DropdownMenu
agora oferece suporte a cores, formas, elevações e bordas personalizadas. (I8e981, b/289554448, b/301887035, b/283654243). - Os componentes do Material3 que expõem um
MutableInteractionSource
na API foram atualizados para expor umMutableInteractionSource
anulável que temnull
como padrão. Não há mudanças semânticas aqui: transmitir nulo significa que você não quer elevar oMutableInteractionSource
, e ele será criado dentro do componente, se necessário. A mudança para nulo permite que alguns componentes nunca aloquem umMutableInteractionSource
e que outros componentes só criem uma instância quando necessário, o que melhora o desempenho desses componentes. Se você não estiver usando oMutableInteractionSource
transmitido a esses componentes, recomendamos transmitir "null". Também é recomendável fazer mudanças semelhantes nos seus próprios componentes. (I41abb, b/298048146). - Adiciona
RippleConfiguration
eLocalRippleConfiguration
para permitir a personalização por componente / subárvore de ondulações usando valores fixos. Por exemplo, para mudar a cor de um componente que você não controla ou desativar um efeito de ondulação em um componente. Na maioria dos casos, os valores padrão devem ser usados. Essas APIs são uma saída para a personalização de componentes individuais / subárvores limitadas. Para mudanças mais amplas e sistemas de design personalizados, crie seu próprio efeito de ondulação usandocreateRippleModifierNode
. (I7b5d6, b/298048146). - Adiciona uma nova API de efeito ripple no Material3, que substitui a
rememberRipple
descontinuada. Também adiciona umCompositionLocal
e umLocalUseFallbackRippleImplementation
temporários para reverter os componentes do Material3 e usar as APIsrememberRipple
/RippleTheme
descontinuadas. Isso será removido na próxima versão estável e destina-se apenas a ser uma ajuda temporária de migração para casos em que você está fornecendo umRippleTheme
personalizado. (I34cbc, b/298048146).
Correções de bugs
- Subcomposição removida em
ModalBottomSheet
para melhorar o desempenho. Correção de um problema em queModalBottomSheet
podia falhar em cenários específicos em combinação comLookaheadScope
. (I2a198) - Subcomposição removida em
BottomSheetScaffold
para melhorar o desempenho. Correção de um problema em queBottomSheetScaffold
falhava em cenários específicos em combinação comLookaheadScope
. (Ie6401). - O alinhamento do selo é ajustado para ficar mais perto do centro do conteúdo de ancoragem em relação ao canto superior direito. (I18a28).
- Corrigimos um problema de acessibilidade com o
DateRangePicker
em que o título do texto "Mês-Ano" era transmitido como acionável para usuários de leitores de tela, acesso com interruptor e acesso por voz. (I2ac55). - Correção do bug na ordem dos parâmetros
mediumTopAppBarColors
. (Ibe64a).
Versão 1.2
Versão 1.2.1
6 de março de 2024
Lançamento de androidx.compose.material3:material3-*:1.2.1
. A versão 1.2.1 contém estas confirmações.
Correções de bugs
- Estabilizar os estados do controle deslizante novamente. Transformando
State.onValueChangeFinished
em um val novamente. EnvolvendoonValueChangeFinished
em umrememberUpdatedState
. (Ie8fd0, b/322269951) - Removendo
@Stable
dos estados deSlider
porque estamos mudandostate.onValueChangeFinished
para umvar
. (I82ba1, b/322269951) - Corrigir
NavigationBar
cores personalizadas para copiar dos padrões. (80a779, b/326894020) - Correção de uma regressão em
ExposedDropdownMenu
para que ele possa ser focado novamente (3fcec1, b/323694447). - Correção do problema de cache de cor do botão (3e5bbcb/327371655).
Versão 1.2.0
7 de fevereiro de 2024
Lançamento de androidx.compose.material3:material3-*:1.2.0
. A versão 1.2.0 contém estas confirmações.
Problema conhecido
- Um bug de renderização de interoperabilidade View-Compose foi introduzido no
PrimaryTabRow
como parte de uma mudança para melhorar a performance. A solução alternativa é usarTabRow
comTabRowDefaults.PrimaryIndicator
Mudanças importantes desde a 1.1.0
Novos componentes do Material Design 3
- Puxe para atualizar
- Botão segmentado
Melhorias nos componentes atuais do Material Design 3.
- Barra de apps da parte de baixo (alinhamento da direita para a esquerda, ocultação automática ao rolar)
- Atualização visual das guias
- Selo (atualização de alinhamento)
APIs experimentais foram promovidas para estáveis.
Melhorias de desempenho
- Confira mais detalhes nesta postagem do blog (em inglês).
Versão 1.2.0-rc01
24 de janeiro de 2024
Lançamento de androidx.compose.material3:material3-*:1.2.0-rc01
. A versão 1.2.0-rc01 contém estas confirmações.
Correções de bugs
- Correção do bug na ordem dos parâmetros
mediumTopAppBarColors
. (Ibe64a). - Correção de um bug introduzido no
1.2.0-beta02
emCardDefaults.cardColors
que não atualizava ocontentColor
com base no valor do parâmetrocontainerColor
. (Iee041, b/319671246). - Correção de um bug em
disabledContentColor
introduzido em1.2.0-beta02
e adição de uma pequena otimização. (I6dda1, b/318428829)
Versão 1.2.0-beta02
10 de janeiro de 2024
Lançamento de androidx.compose.material3:material3-*:1.2.0-beta02
. A versão 1.2.0-beta02 contém estas confirmações.
Bug conhecido
- Um bug em
IconButtonColors
vai atribuirdisabledContentColor
a um alfa (0,38f) deLocalContentColor
em vez docontentColor
especificado pelo usuário. A solução alternativa é definir explicitamente odisabledContentColor
. Isso será corrigido na próxima versão.
Mudanças na API
- Adição da capacidade de ativar acentos circunflexos de dicas para APIs Plain
Tooltip
. (Ibf767) SwipeToDismissState
,rememberSwipeToDismiss
eSwipeToDismissValue
foram renomeados para ter_SwipeToDismissBox_
. (I68d6d)
Correções de bugs
- Correção do valor de padding final de
ListItem
para alinhamento com a especificação. (Ibd68b, b/305342674) - A cor do contorno do card com contorno agora está mapeada corretamente para
OutlineVariant
. (I75480, b/310979715) - A cor dinâmica agora usa funções de cores definidas pelo sistema. Isso melhora o contraste para conteúdo acessível e alinha mais de perto a cor dinâmica à especificação do Material. (I1de96)
- Foi corrigido o processamento de volta de
ModalBottomSheet
no Android T/13+ quandoandroid:enableOnBackInvokedCallback="true"
. (I728dc, b/306196110)
Versão 1.2.0-beta01
13 de dezembro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-beta01
. A versão 1.2.0-beta01 contém estas confirmações.
Mudanças na API
TabIndicatorScope
foi marcado como experimental. (I45c88).- Remoção de APIs experimentais descontinuadas para dicas. (I438cb).
- Mude as novas sobrecargas de
TabRow
para não usar subcomposições. Isso resulta em uma maneira diferente de criar os indicadoresTabRow
com modificadores personalizados. (Ife741) - Descontinuar as APIs
DismissDirection
eDismissValue
. Eles foram mesclados emSwipeToDismissValue
, cujos valores indicam a posição e a direção deSwipeToDismissBox
.DismissState.progress
agora está marcado como umFloatRange
entre0.0
e1.0
. Os recursos "Economia" e "Construtor" descontinuados doDismissState
foram removidos. O componenteSwipeToDismiss
, o estado e o objeto de padrões foram marcados como experimentais. (Ib54f2).
Correções de bugs
- O indicador padrão de
PullToRefresh
agora é uma ponta de seta aberta em vez de um triângulo sólido. (I67be3)
Versão 1.2.0-alpha12
29 de novembro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha12
. A versão 1.2.0-alpha12 contém estas confirmações.
Mudanças na API
RangeSlider
agora usa um intervalo do Kotlin (por exemplo,0f..1f
) em vez de uma classe de valorFloatRange
personalizada. OSnapFlingBehavior.kt
agora também usa um intervalo Kotlin. (I025cb).- Marque as funções de fábrica do modificador como
@Stable
. (Ib109f).
Versão 1.2.0-alpha11
15 de novembro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha11
. A versão 1.2.0-alpha11 contém estas confirmações.
Novos recursos
- Implementa
PullToRefreshContainer
ePullToRefreshState
, que juntos fornecem uma implementação de puxar para atualizar no Material3. (I16456, b/261760718).
Mudanças na API
- Marque
SwipeToDismissBox
DismissDirection
eDismissValue
como experimentais. (I517b0). SwipeToDismiss
foi renomeado comoSwipeToDismissBox
. Renomeiebackground
parabackgroundContent
edismissContent
para a lambdacontent
final. (I7f4d3).- Torne o construtor de
ChipElevation
eSelectableChipElevation
público. (Ie0c48, b/308432421) - Adicionando
ModalBottomSheetProperties
. MovendosecurePolicy
paraModalBottomSheetProperties
. Adição deisFocusable
eshouldDismissOnBackPress
aModalBottomSheetProperties
. Esses novos booleanos ajudam a determinar como a caixa de diálogo modal na parte de baixo deve processar eventos do IME. (Iea56f, b/278216859). - Estados
RangeSlider
eSlider
atualizados para removerinitialOnValueChange
, os prefixos iniciais e os kdocs adequados. (I57d30). - Descontinuar a classe
ChipBorder
e as chamadas de função associadas. Recomendar o uso direto deBorderStroke
. (I89cc2). - As APIs de dica da ferramenta Foundation agora são
@ExperimentalFoundationApi
. (I30b0b) TabRow
eScrollableTabRow
não estão mais descontinuados. As novas variantes primária e secundária são marcadas como experimentais. (I0def6)- Os ícones de filtro e entrada agora usam
BorderStroke
diretamente. (I07a8d) SegmentedButton
agora usaBorderStroke
diretamente. (I89b9b).- A função genérica
AlertDialog
foi renomeada comoBasicAlertDialog
, e a função anterior foi descontinuada. (Idbe52). - Renomeie as APIs
SwipeToDismiss
paraSwipeDismiss
e promova as novas APIsSwipeDismiss
para estáveis. (I14cbe) - Adição de
tonalElevation
eshadowElevation
às APIs de dica. Além disso, as APIsTooltipBox
,PlainTooltip
eRichTooltip
foram movidas de volta para a versão experimental porque foram lançadas por engano como estáveis. (If0f66, b/293939035). - As APIs experimentais de ícones foram promovidas para estáveis. (Iea2c3).
- A anotação
@ExperimentalMaterial3Api
foi removida dos cards clicáveis do Material3. (I88dbf).
Correções de bugs
- Correção de um problema em que o
SwipeToDismiss
falhava em determinados cenários com layouts Lookahead e Lazy aninhados. (Ica8d1, b/297226562).
Versão 1.2.0-alpha10
18 de outubro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha10
. A versão 1.2.0-alpha10 contém estas confirmações.
Mudanças na API
- Promoção de
Badge
eBadgedBox
para estável. (I67f16, b/261565132). - Adicionar
securePolicy
como um parâmetro aModalBottomSheet
para que os usuários possam definir o comportamento deWindowManager.LayoutParams.FLAG_SECURE
. (Icdac8, b/296250262). - Adicionadas novas sobrecargas de
LinearProgressIndicator
eCircularProgressIndicator
que usamprogress
como lambda. Elas devem ter um desempenho melhor do que as versões anteriores. (I824e6, b/295616656) - Renomeia
StandardSizeClasses
comoAllSizeClasses
. (I8cb07). - Combinar funções de cálculo de classes de tamanho de janela. (Iad935).
Correções de bugs
- Foi corrigida uma falha do
DatePicker
ao clicar rapidamente nos botões de seta de navegação quando o mês mostrado está na borda do intervalo de anos permitido. (I46f36, b/290954897, b/297002119). - [Barra/trilho de navegação] Compatibilidade com cor transparente para o indicador. (Ie0a9b, b/267289987).
Versão 1.2.0-alpha09
4 de outubro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha09
. A versão 1.2.0-alpha09 contém estas confirmações.
Mudanças na API
- Migração de
ModalNavigationDrawer
eDismissibleNavigationDrawer
para usar novas APIsAnchoredDraggable
. O elementoanimateTo
deDrawerState
foi substituído pelos métodos de abertura e fechamento. O deslocamento agora é exposto como um ponto flutuante em vez de um objeto de estado. Você pode acessar o deslocamento diretamente porcurrentOffset
. (I0a72c). - Funções não combináveis foram adicionadas para criar um
DatePickerState
e umDateRangePickerState
diretamente. Essas funções podem ser usadas como alternativa às funções combináveisrememberDatePickerState
erememberDateRangePickerState
quando necessário. (I70326, b/291524052). - Os
TabRows
fixos e roláveis agora têm variantes primárias e secundárias. Eles são mapeados corretamente para o comportamento de cores e indicadores, conforme definido no Material3. PrimaryScrollableTabRow
eSecondaryScrollableTabRow
agora expõem o estado de rolagem. (Iec8f5, b/260572337).- Adição de um novo parâmetro
sheetMaxWidth
que os desenvolvedores podem definir para especificar uma largura máxima que a página vai abranger. Dp.Unspecified pode ser transmitido para o parâmetro se uma folha que abrange toda a largura da tela for desejada. (Ifb7c9, b/266697696). - Adição das APIs
PlainTooltipBox
eRichTooltipBox
como métodos descontinuados. (I246fa).
Correções de bugs
- Corrigimos uma falha quando o
DatePicker
é inicializado com umDatePickerFormatter
que tem determinados esqueletos de data que permanecem os mesmos quando convertidos em padrões de data (como YY). (I01f29).
Versão 1.2.0-alpha08
20 de setembro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha08
. A versão 1.2.0-alpha08 contém estas confirmações.
Mudança de comportamento interruptiva
ColorScheme
agora é imutável, o que torna as atualizações de cores individuais menos eficientes, mas torna o uso mais comum de cores mais eficiente. O motivo dessa mudança é que a maioria dos apps não teria a atualização de cores individuais como um caso de uso principal. Isso ainda é possível, mas vai recompor mais do que antes. Por sua vez, diminuímos significativamente a quantidade de assinaturas de estado em todo o código do Material, o que vai afetar a inicialização e o custo de tempo de execução de casos de uso mais padrão. (Ic447d, b/297212873)- A elevação tonal não é mais animada em diferentes estados de interação para corresponder à especificação. (Icdd12)
Mudanças na API
- Adicionamos um novo
BottomAppBar
que usa umBottomAppBarScrollBehavior
como parâmetro para ocultá-lo automaticamente quando o conteúdo é rolado. Também adicionamosFabPosition.EndOverlay
, permitindo que o FAB sobreponha a barra de apps da parte de baixo no scaffold em vez de ficar ancorado acima dela. (Iecb47). - Adição de um componente de rótulo simples que se baseia em
BasicTooltipBox
e não é dispensado ao tocar fora dos limites do rótulo. (I821f9).
Correções de bugs
- O uso de
rememberSaveable
foi removido para dicas. (Icc131, b/299500338) - Introduzida uma flag temporária para controlar se o Scaffold deve medir os filhos durante a medição ou o posicionamento. Por padrão, isso será medido na medição. Se você estiver enfrentando problemas com o novo comportamento, registre um problema. (I0b354)
- Corrigimos o Edge to Edge horizontal fixo em
BottomSheet
usando a medição correta para a largura da tela do dispositivo. (I1df0c, b/299058752) - Correção de um bug em que
ModalBottomSheet
não chamavaonDismissedRequest
ao ser dispensado com um gesto de deslizar para baixo na página. (Idfdd8).
Versão 1.2.0-alpha07
6 de setembro de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha07
. A versão 1.2.0-alpha07 contém estas confirmações.
Novos recursos
- A compatibilidade com ícones de espelhamento automático foi adicionada no
compose material 1.6.0-alpha05
. Consulte as notas da versão para mais detalhes.
Mudanças na API
SliderState
implementaDraggableState
(I9b116)- Mudar a forma para ser um parâmetro obrigatório. Renomeie
position
paraindex
na função auxiliar de forma. (I34941) - Atualiza o
DatePicker
formatWithSkeleton
para incluir um mapa usado como cache para melhorias de desempenho. (I3195f). - Adicionamos
BasicTooltipBox
acompose.foundation
e atualizamosPlainTooltipBox
eRichTooltipBox
para usarTooltipBox
com novos elementos combináveisPlainTooltip
eRichTooltip
. (I79e1d).
Correções de bugs
dynamicLightColorScheme
edynamicDarkColorScheme
agora retornam cores de croma mais altas para funções de superfície esurfaceContainer
. (I5e901).- Foi corrigido um problema em que alguns componentes que usavam subcomposição (por exemplo,
BottomSheetScaffold
) dentro de um Scaffold dentro de umLookaheadScope
tentavam ler o tamanho muito cedo. (I297b4, I871f1, b/295536718).
Versão 1.2.0-alpha06
23 de agosto de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha06
. A versão 1.2.0-alpha06 contém estas confirmações.
Correções de bugs
- Corrigimos o cálculo de
offset
daDropdownMenu
para que os deslocamentos de x dependam apenas da direção do layout local, e os deslocamentos de y não sejam mais invertidos quando o menu estiver perto da parte de baixo da tela. (Iccc74, b/294103942) - Corrigimos o cálculo de
offset
daDropdownMenu
para que os deslocamentos de x dependam apenas da direção do layout local, e os deslocamentos de y não sejam mais invertidos quando o menu estiver perto da parte de baixo da tela. (Ib87a2, b/294103942)
Versão 1.2.0-alpha05
9 de agosto de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha05
. A versão 1.2.0-alpha05 contém estas confirmações.
Mudanças na API
- Atualizações nas cores da caixa de seleção e do
TriStateCheckbox
. OCheckboxDefaults.colors()
disabledUncheckedColor
agora afeta apenas a borda da caixa de seleção. Casos especiais que exigem a definição da cor da caixa interna quando desativada e desmarcada exigem uma instância construída personalizada de umCheckboxColors
com os valores de cor desejados. (I77d17, b/291943198).
Versão 1.2.0-alpha04
26 de julho de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha04
. A versão 1.2.0-alpha04 contém estas confirmações.
Novos recursos
- API experimental de botão segmentado (Ifc8fb)
- Os divisores agora têm um parâmetro para controlar a orientação e oferecer suporte a divisores verticais. (I4c899, b/288438593).
Mudanças na API
- Estamos movendo a dependência de densidade para o nível do componente. Isso se aplica aos seguintes componentes:
SwipeToDismiss
e componentes baseados em planilhas. Use a nova sobrecarga fornecida em que a densidade é um parâmetro. (I1846e). - Anotações extras para especificar entradas permitidas para elementos combináveis (Ief234).
- Adicione um parâmetro de ícone ao botão segmentado, divida a semântica para que os botões segmentados possam ser selecionáveis para implementar a seleção única e alternáveis para implementar a seleção múltipla, com
SelectableSegmentedButtonRow
eToggelableSegmentedButtonRow
, respectivamente. (I38740). - O divisor foi renomeado como
HorizontalDivider
. Adicionamos a funcionalidadeVerticalDivider
. (I5975c) - Mude o uso de
ClosedFloatingPointRange
para oFloatRange
mais leve nas APIs experimentais do Material3 para minimizar o autoboxing. (I4aab5). - Adição de um novo alinhamento de início para
FabPosition
(Ib7aea, b/170592777).
Correções de bugs
ModalBottomSheet
respeita a direção do layout local. (Ib4f44, b/285628622).
Versão 1.2.0-alpha03
21 de junho de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha03
. A versão 1.2.0-alpha03 contém estas confirmações.
Mudanças de comportamento
includeFontPadding
agora éfalse
por padrão na tipografia do Material 3. O estilo de altura da linha padrão também foi mudado paraTrim.None
eAlignment.Center
, elineHeight
explícitos (em sp) foram adicionados aosTextStyle
s deTypography
. Consulte a documentação da API se quiser personalizar esses valores e leia a postagem no blog para uma explicação detalhada dessas mudanças. (I6266f, Icabc3).
Novos recursos
- Adicionada uma sobrecarga para
RangeSlider
, que é uma versão com estado do componente. CriadoRangeSliderState
que contém todas as informações da faixa ativa atual, as medições dos componentes doRangeSlider
e a lógica de arrastar e gestos. (I8c270). - A barra de pesquisa agora é compatível com sombras usando o parâmetro
shadowElevation
, que foi adicionado recentemente. (Ia5369, b/271040353) - O
ColorScheme
agora é compatível com novas funções doSurfaceContainer
. - Agora é possível desativar a sobreposição de elevação tonal da superfície com o local de composição
LocalTonalElevationEnabled
. (Ic203c, b/277774590)
Mudanças na API
- Abra os construtores de cores de componentes. (I8c4a6)
- Adição do parâmetro de foco às duas APIs de dica para que os desenvolvedores possam fazer com que a dica consuma ou não eventos de toque. Isso pode interromper a navegação automática do foco de acessibilidade. (Ie32d8).
- Acessibilidade otimizada para desempenho e alocações de memória. (Iede48).
- Exposição de
DefaultSizeClasses
e criação deStandardSizeClasses
paraWindowSizeClasses
(I91838) - mudar
WindowWidth/HeightSizeClass
para classes de valores de ponto flutuante (Ie686e)
Correções de bugs
- O parâmetro
contentWindowInsets
do Scaffold agora respeita os encartes de janela consumidos. O comportamento do padding de conteúdo com base emtopBar
ebottomBar
permanece inalterado quando esses parâmetros são fornecidos. (I08b73, b/264601542). - Corrija o alinhamento da barra de apps central superior para garantir que um título longo não seja renderizado sobre os ícones de ação ou o ícone de navegação. (I4369f, b/236994621)
- As posições das guias agora exigem uma largura mínima de conteúdo de 24 dp. Isso fornece um destino de toque acessível para indicadores de guias. (Id8861)
- As paletas de cores dinâmicas do
dynamicLightColorScheme
e dodynamicDarkColorScheme
agora são compatíveis com novas funções de superfície. (I1252e) - Atualização do alinhamento da notificação de selo para não cortar quando houver conflito com o bisavô. (Idf75a).
Versão 1.2.0-alpha02
24 de maio de 2023
Lançamento de androidx.compose.material3:material3-*:1.2.0-alpha02
. A versão 1.2.0-alpha02 contém estas confirmações.
Mudanças na API
- Adicione o parâmetro de encartes de janela a
ModalBottomSheet
.- O efeito de tela escura para
ModalBottomSheet
agora pode ser mostrado atrás da barra de status comwindowInsets
definido como zero - A funcionalidade padrão
ModalBottomSheet
foi atualizada para ficar fora das barras de sistema, incluindo a navegação. - O processamento de encartes da barra de status é fornecido pela alça de arrastar no modo de ponta a ponta.
BottomSheetDefaults
inclui encartes de janela paraBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162).
- O efeito de tela escura para
- Descontinue
Indicator
e adicionePrimary
/SecondaryIndicator
para corresponder às especificações do M3.PrimaryIndicator
corresponde à largura do conteúdo da guia, enquantoSecondaryIndicator
abrange toda a largura disponível.SecondaryIndicator
é equivalente aoIndicator
, que foi descontinuado, e pode ser substituído diretamente. (I27604). - Adicionamos uma opção para transmitir um
ScrollState
ao construir umDropdownMenu
ou umExposedDropdownMenu
para controlar o estado de rolagem vertical dos itens de menu mostrados. (Ia0734, b/185304441). - Adicionada uma sobrecarga para
Slider
, que é uma versão com estado do componente. CriadoSliderState
que contém todas as informações da faixa ativa atual, as medições dos componentes doSlider
e a lógica de arrastar e gestos. (I124a5). - Renomeação da propriedade de semântica
isContainer
paraisTraversalGroup
(I121f6). - Adicionamos
TextStyle.merge(...)
otimizado com a lista completa de parâmetros. (Iad234, b/246961787). - As interfaces
TooltipState
,RichTooltipState
ePlainTooltipState
foram transformadas em interfaces públicas. Adição deRichTooltipStateImpl
ePlainTooltipStateImpl
para estados padrão. Foram adicionadas funçõesremember*State
para receber esses estados implementados.TooltipSync
foi removido em favor de umTooltipDefault.GlobalMutatorMutex
. (I7813d). - Atualizamos o
DatePickerColors
para incluir mais opções de personalização para o divisor do seletor de data, a navegação e as cores dos campos de entrada de texto. (I1a685, b/274626815) DatePickerState
eDateRangePickerState
agora são interfaces públicas com implementações padrão que podem ser recuperadas porrememberDatePickerState
erememberDateRangePickerState
. (I71c52).- Removemos o
dateValidator
deDatePicker
eDateRangePicker
e introduzimos uma interfaceSelectableDates
que pode ser definida no estado para controlar quais datas ou anos podem ser selecionados na interface. (Ic2fc6). TimePicker
removido da API estável. Outras mudanças são esperadas na API de estado (I3f39a).- O
ModalBottomSheet
foi movido para o Android. OModalBottomSheet
não é recomendado para uso em computadores, e a funcionalidade não recebe manutenção ativa. (Ib3778).
Correções de bugs
- Corrigimos a ação de dispensar
AlertDialog
para que ela apareça abaixo da ação de confirmação quando as ações forem empilhadas umas sobre as outras para caber na largura da caixa de diálogo. Essa correção alinha a implementação à especificação do Material Design (I029de, b/235454277). - Corrigido bug em
ListItem
que usava padding incorreto para itens de três linhas. (I6e235). - O
ModalBottomSheet
agora pode mostrar o teclado IME (Idc508, b/262140644, b/268380384, b/272483584).
Versão 1.2.0-alpha01
10 de maio de 2023
Lançamento de androidx.compose.material3:material3:1.2.0-alpha01
e androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
. A versão 1.2.0-alpha01 contém estas confirmações.
Versão 1.1
Versão 1.1.2
20 de setembro de 2023
Lançamento de androidx.compose.material3:material3:1.1.2
e androidx.compose.material3:material3-window-size-class:1.1.2
. A versão 1.1.2 contém estas confirmações.
Correções de bugs
- Correção do modificador sendo transmitido incorretamente a dois elementos combináveis. (b/282761472)
- Correção:
TimePickerState
retorna horas incorretas quando inicializado com 23 horas. (b/278242122). - Correção do estado inicial de alternância para validação de meio-dia e minutos. (b/269768197, b/282790635).
- Correção de
state.hour
que retornava um valor incorreto para 23h. (b/282761472, b/278242122)
Versão 1.1.1
21 de junho de 2023
Lançamento de androidx.compose.material3:material3:1.1.1
e androidx.compose.material3:material3-window-size-class:1.1.1
. A versão 1.1.1 contém estas confirmações.
Correções de bugs
- Adiciona uma chamada para
ModalBottomSheet
sem o parâmetrowindowInset
para compatibilidade binária. (Ib7959). - Adicione o parâmetro de encartes de janela a
ModalBottomSheet
.- O efeito de tela escura para
ModalBottomSheet
agora pode ser mostrado atrás da barra de status comwindowInsets
definido como zero - A funcionalidade padrão
ModalBottomSheet
foi atualizada para ficar fora das barras de sistema, incluindo a navegação. - O processamento de encartes da barra de status é fornecido pela alça de arrastar no modo de ponta a ponta.
BottomSheetDefaults
inclui encartes de janela paraBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162).
- O efeito de tela escura para
Versão 1.1.0
10 de maio de 2023
Lançamento de androidx.compose.material3:material3:1.1.0
e androidx.compose.material3:material3-window-size-class:1.1.0
. A versão 1.1.0 contém estas confirmações.
Principais recursos da versão 1.1.0
Novos componentes do Material Design 3
Melhorias nos componentes atuais do Material Design 3.
APIs experimentais foram promovidas para estáveis.
Veja mais detalhes nesta postagem do blog (em inglês).
Versão 1.1.0-rc01
19 de abril de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-rc01
e androidx.compose.material3:material3-window-size-class:1.1.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
Mudanças na API
TimePicker
removido da API estável. Outras mudanças são esperadas na API de estado (I3f39a).- O
ModalBottomSheet
foi movido para o Android. OModalBottomSheet
não é recomendado para uso em computadores, e a funcionalidade não recebe manutenção ativa. (Ib3778).
Versão 1.1.0-beta02
5 de abril de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-beta02
e androidx.compose.material3:material3-window-size-class:1.1.0-beta02
. A versão 1.1.0-beta02 contém estas confirmações.
Mudanças na API
SheetState
agora tem o parâmetroskipHiddenState
opcionalrememberStandardBottomSheetState
agora tem o parâmetroskipHiddenState
opcionalBottomSheetScaffold
agora tem uma âncora oculta definida, embora esteja desativada por padrão.- A documentação de
SheetState.requireOffset
foi atualizada BottomSheetDefaults.MinimizedShape
foi renomeado comoBottomSheetDefaults.HiddenShape
(I839f4, b/273870234).
Correções de bugs
- Não mude o mostrador de hora para minuto quando a exploração por toque estiver ativada. (I717d0).
- As semânticas de alça de arrastar
ModalBottomSheet
eBottomSheetScaffold
foram mescladas. (I05afb). - O modificador
BottomSheetScaffold
e os parâmetroscontainerColor
econtentColor
agora afetam apenas o conteúdo. (I992cb). - O
BottomSheetScaffold nestedScroll
para conteúdo de página agora implementa movimentos rápidos. (I992cb).
Versão 1.1.0-beta01
22 de março de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-beta01
e androidx.compose.material3:material3-window-size-class:1.1.0-beta01
. A versão 1.1.0-beta01 contém estas confirmações.
Mudanças na API
- Adicione o parâmetro de tipo de layout ao elemento combinável
TimePicker
. Ele permite usar layouts diferentes, dependendo da configuração da tela (Ia0e16). SearchBarDefaults
foi marcado como experimental. (I65561).- Adição de elevação de sombra a
BottomSheetScaffold
(I94e0f). - Agora é possível mostrar os seletores de data sem o cabeçalho. Mudanças na API para permitir a transmissão de um título nulo ao criar um seletor de data. Agora é possível transmitir título, cabeçalho e
showToggleMode = false
nulos para mostrar um seletor sem comando. (Id3f3a, b/266132421, b/267194809).
Correções de bugs
- As barras de pesquisa agora perdem o foco automaticamente quando ficam inativas. (I22a7c, b/261444487).
- Atualizamos o
DateRangePicker
para permitir a seleção de um período com a mesma data de início e término. (I16529, b/272882497). - Os campos de texto agora posicionam corretamente os elementos de texto quando o tamanho da fonte é menor do que o esperado. Isso pode resultar em uma pequena mudança de pixels nos apps com base nas configurações de fonte e no script. (I8b8d0).
- As ações semânticas da página inferior agora têm rótulos. (I277b0).
Versão 1.1.0-alpha08
8 de março de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-alpha08
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
. A versão 1.1.0-alpha08 contém estas confirmações.
Novos recursos
- Adição de compatibilidade com
BottomSheetScaffold
eBottomSheetScaffoldState
. (I063d4).
Mudanças na API
- Adicionamos funcionalidade ao
DatePickerState
e aoDateRangePickerState
para permitir a definição de datas após a criação inicial do estado, além de redefinir seleções definindo carimbos de data/hora nulos. A definição manual de datas precisa ser feita com cuidado, e a nova funçãosetSelection
vai gerar uma exceção caso uma data fornecida não atenda a uma pré-condição (consulte a documentação). (Ifa645, b/268609314, b/270427389). - Renomeie "Collapsed
SheetValue
" para "PartiallyExpanded
" para descrever o comportamento nesse estado com mais precisão e flexibilidade. (Ia1491). - Atualizamos os nomes dos parâmetros
ListItem
para _content em vez de _text. Os getters padrão agora sãoReadOnlyComposables
quando relevante. (I69a25). - Concluir APIs interativas do Surface de experimental. (I90d59, b/261561812).
Correções de bugs
- Correção de um problema em que o estado
HalfExpanded
deModalBottomSheet
era calculado incorretamente e a página parecia estar flutuando. (I45e84, b/268411386). - Adicione a verificação
confirmValueChange
ao toque de tela escura paraModalBottomSheet
. (I2311a, b/270425759) - Mova as ações semânticas
BottomSheet
para a alça de arrastar. (I158ba). - O
ModalBottomSheet
agora comanda o foco na inicialização e processa o botão de retorno. (I4d2ab). - O
ModalBottomSheet onDismissRequest
agora também é processado durante gestos de rolagem aninhados. (I655c5, b/268433166).
Versão 1.1.0-alpha07
22 de fevereiro de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-alpha07
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
. A versão 1.1.0-alpha07 contém estas confirmações.
Novos recursos
- Adicione um elemento combinável de entrada de hora que funcione com
rememberTimePickerState()
e siga a especificação do M3 para entrada de hora (Ia4fab). - Adição de uma API
DateRangePicker
do Material 3 para selecionar um período. (I7a6c3, b/267194809) - Adicionamos suporte ao modo de entrada do Material 3 para selecionar intervalos de datas usando a API
DateRangePicker
. (Ifdbc4). - Agora é possível personalizar as cores do campo de texto:
- As cores do campo de entrada e do texto do marcador com base no estado de foco e erro. O parâmetro
textColor
foi renomeado comounfocusedTextColor
, eplaceholderColor
foi renomeado comounfocusedPlaceholderColor
. - A cor do contêiner para campos de texto preenchidos com base no estado de erro com o novo parâmetro
errorContainerColor
.
- As cores do campo de entrada e do texto do marcador com base no estado de foco e erro. O parâmetro
- As cores do campo de texto do menu suspenso exposto foram atualizadas com parâmetros para oferecer suporte à nova API de prefixo e sufixo. (I9c8b4, b/254284181, b/264766350).
Mudanças na API
- Reversão de algumas versões da API Slider e remoção de sobrecargas redundantes do controle deslizante que são cobertas pelo novo controle deslizante experimental com polegar e faixa personalizados. O
RangeSlider
foi promovido a estável. (Ie8fbd). - Renomeou
defaultElevation
paraelevation
nas funções de elevação do chip. (I0f872). - As seguintes APIs de campo de texto do Material 3 não são mais experimentais:
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
eoutlinedTextFieldPadding
. (Ieb5c0, b/261561819). TimePickers
is24Hour
usa a configuração do sistema (I18856).- A anotação experimental foi removida das APIs de scaffold. (Ibb51e, b/261565765, b/261436953).
Correções de bugs
- O formato padrão
ModalBottomSheet
agora é sempreSheetDefaults.ExpandedShape
. (I0dfca). - Melhorias na acessibilidade para
DatePicker
eDateRangePicker
do Material 3. (I5087e). - Correção de um bug em que a restrição de altura máxima é propagada e pode causar falhas. (I30d8c)
- Remoção de funções semânticas de superfícies clicáveis e selecionáveis, atualização de componentes que as usavam para definir funções usando modifier.semantics (I793d9).
Versão 1.1.0-alpha06
8 de fevereiro de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-alpha06
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
. A versão 1.1.0-alpha06 contém estas confirmações.
Novos recursos
- Os campos de texto agora oferecem suporte a sufixo e prefixo (Ia8578, b/179884561).
- A função
TimePicker
foi adicionada para mostrar um seletor de horário, seguindo a especificação do Material 3. Essa função é usada junto comTimePickerState
e o método de conveniênciarememberTimePickerState
(I71910). - A entrada de data aparece como modo de exibição no
DatePicker
. Agora é possível alternar entre o seletor de data e os modos de entrada de data (Ieeff7). - Adição da API para
RichTextTooltips
(I58ef3). - Implementação modal da página inferior do Material 3, incluindo
ModalBottomSheet
eModalBottomSheetDefaults
. Também introduzimosSheetState
erememberSheetState
, que podem ser usados para futuros componentes de páginas (I0853a, b/244189383).
Mudanças na API
- A API
showSnackbar
foi estabilizada (I195c2, b/261424370). - As APIs para chips de sugestão de resposta e de assistência foram estabilizadas (Ibb67b, b/261424370).
- Promoção das APIs
ListItem
,ListItemDefaults
eListItemColors
para não experimentais (I7e7fa, b/261438882). - Promoção de
SliderPositions
,SliderDefaults.Thumb
eSliderDefaults.Track
para a versão estável e adição das APIsSlider
eRangeSlider
não experimentais contendo faixas e círculos personalizados. Também descontinuamos as APIsSlider
eRangeSlider
anteriores (Ie5ea6, b/261566890). - O
Modifier.tooltipAnchor()
agora é público. Assim, os desenvolvedores podem transmitir esse elemento para a âncora para indicar que uma dica precisa ser mostrada ao tocar e manter pressionado. A APIPlainTooltipBox
foi atualizada para não tornar maisTooltipState
anulável e agora tem um padrão (Ie2fb7). ProgressIndicatorDefaults.circularTrackColor
foi marcado como@Composable
para manter a consistência (Id29cc).- O getter da propriedade
LocalMinimuTouchTargetEnforcement
foi restaurado, marcado como descontinuado e redirecionado paraLocalMinimumInteractiveComponentEnforcement
(I60dd5).
Versão 1.1.0-alpha05
26 de janeiro de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-alpha05
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
. A versão 1.1.0-alpha05 contém estas confirmações.
Novos recursos
DatePickerDialog
e suporte à acessibilidade.- Faixa e círculo personalizados adicionados ao
RangeSlider
.
Atualizações de dependência
Compose UI
eCompose Material
agora dependem do Lifecycle 2.6.0.
Versão 1.1.0-alpha04
11 de janeiro de 2023
Lançamento de androidx.compose.material3:material3:1.1.0-alpha04
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
. A versão 1.1.0-alpha04 contém estas confirmações.
Novos recursos
- API
DatePicker
inicial para escolher uma única data na interface da agenda. Essa API ainda está passando por mudanças (I722b9). - Foi adicionado suporte a dicas simples pela
PlainTooltipBox
(I0cdfb). - Barra de pesquisa (Iad128).
SwipeToDismiss
(I458a8, b/242889540).
Mudanças na API
- Adição da propriedade semântica
IsContainer
em plataformas. Essa propriedade vai ser usada em uma mudança posterior, que determina a ordem de travessia com base no significado semântico de elementos como plataformas (I63379). - As APIs relacionadas à gaveta de navegação foram marcadas como estáveis (Iab01e, b/261439597).
- Adicionamos um parâmetro de cor de faixa para indicadores de progresso circulares e um parâmetro de limite de traço para indicadores de progresso circulares e lineares (Ie668c, b/216325962, b/222964817).
- Mais nulidade do tipo de retorno das funções descontinuadas e ocultas (Ibf7b0).
- Adição do
Modifier.minimumInteractiveComponentSize
. Ele pode ser usado para reservar pelo menos 48 dp de tamanho e evitar a ambiguidade das interações de toque caso o elemento seja menor (I33f58, b/258495559). - Foi adicionada uma API experimental para o elemento combinável
AlertDialog
que tem um slot de conteúdo (Iec4a2).
Correções de bugs
- O andamento dos indicadores de progresso agora está vinculado corretamente ao intervalo esperado (I8a7eb, b/262262727).
Problema conhecido
- Ao atualizar do
androidx.compose.foundation:1.4.0-alpha03
para oandroidx.compose.foundation:1.4.0-alpha04
, talvez você receba um errojava.lang.NoSuchFieldError
. O problema foi relatado originalmente aqui. Uma correção foi enviada e vai estar disponível na próxima atualização do Compose. Como solução alternativa, atualize suas bibliotecasandroidx.compose.material
eandroidx.compose.material3
para a versão mais recente (1.1.0-alpha04) ou faça downgrade doandroidx.compose.foundation
para a versão 1.4.0-alpha03.
Versão 1.1.0-alpha03
7 de dezembro de 2022
Lançamento de androidx.compose.material3:material3:1.1.0-alpha03
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
. A versão 1.1.0-alpha03 contém estas confirmações.
Mudanças na API
consumedWindowInsets()
foi renomeado comoconsumeWindowInsets()
ewithConsumedWindowInsets()
comoonConsumedWindowInsetsChanged()
. Além disso, os modificadores se tornaram públicos (Ie44e1).- Um novo padding padrão foi adicionado para uso em botões com texto e ícone (I8f662).
- Cores desativadas foram adicionadas à barra de navegação e à coluna (Ia7892, b/258867034).
- Adição de uma API Modifier para consultar informações de rolagem de ancestrais (I2ba9d, b/203141462).
Clickable
foi usado para atrasar corretamente as interações de pressionamento quando gestos podem se tornar eventos de rolagem.- Os elementos
Clickables
foram corrigidos para passar a atrasar ondulações corretamente quando usados dentro de umScrollable ViewGroup
. - As gavetas e planilhas foram atualizadas para atrasar corretamente os pressionamentos, em casos em que gestos podem se tornar eventos de rolagem.
Atualizações de dependência
Compose UI
eCompose Material
agora dependem do Lifecycle 2.5.1 (I05ab0, b/258038814).
Versão 1.1.0-alpha02
9 de novembro de 2022
Lançamento de androidx.compose.material3:material3:1.1.0-alpha02
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
. A versão 1.1.0-alpha02 contém estas confirmações.
Mudanças na API
awaitFirstDown
ewaitForUpOrCancellation
agora aceitam umPointerEventPass
para ter mais flexibilidade. Além disso,ExposedDropdownMenuBox
, que mostrava um menu durante a rolagem, foi corrigido (I7579a, b/212091796).- O parâmetro
minLines
foi adicionado ao Text,TextField
eOutlinedTextField
do Material e Material 3, o que permite definir a altura mínima do componente em termos de número de linhas (I4af1d). - A função
TopAppBarDefaults smallTopAppBarColors
foi descontinuada e substituída por uma nova funçãotopAppBarColors
que precisa ser usada ao criar umaTopAppBar
(Ie6cb9). - Foi adicionado o parâmetro
minLines
aBasicText
eBasicTextField
. Ele permite definir a altura mínima desses elementos combináveis em termos de número de linhas (I24294, b/122476634).
Correções de bugs
- O conteúdo de
IconButton
eIconToggleBotton
do Material 3 agora é cortado na forma da camada de estado do componente. Por exemplo, em forma circular (I9da8f). - As barras de apps de médio e grande porte do Material 3 foram atualizadas para aplicar a mesma cor de plano de fundo em toda a superfície, além de permitir que a configuração substitua as cores padrão por valores de cor transparentes (I67659, b/249688556, b/250838918).
Versão 1.1.0-alpha01
24 de outubro de 2022
Lançamento de androidx.compose.material3:material3:1.1.0-alpha01
e androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
. A versão 1.1.0-alpha01 contém estas confirmações.
Correções de bugs
- Foi corrigida a barra de apps de cima quando o título é aplicado com um TextStyle e um Brush (If667e).
Versão 1.0
Versão 1.0.1
9 de novembro de 2022
Lançamento de androidx.compose.material3:material3:1.0.1
e androidx.compose.material3:material3-window-size-class:1.0.1
. A versão 1.0.1 contém estas confirmações.
Correções de bugs
- As barras de apps de médio e grande porte do Material 3 foram atualizadas para aplicar a mesma cor de plano de fundo em toda a superfície, além de permitir que a configuração substitua as cores padrão por valores de cor transparentes (I67659, b/249688556, b/250838918).
Versão 1.0.0
24 de outubro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0
e androidx.compose.material3:material3-window-size-class:1.0.0
. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
Esta é a primeira versão estável do Compose Material 3.
Temas do Material Design 3 e cores dinâmicas do Material You
Componentes do Material Design 3
- Indicação no ícone
- Barra de apps de baixo
- Botões
- FAB e FAB estendido
- Cards
- Caixa de seleção
- Ícones
- Caixas de diálogo
- Separador
- Menu suspenso
- Lista
- Barra de navegação
- Gaveta de navegação
- Coluna de navegação
- Indicador de progresso
- Botão de opção
- Controle deslizante
- Interruptor
- Guias
- Campos de texto
- Barra de apps de cima
- Ícone
- Texto
- Superfície
- Layout
- Cor do conteúdo
Classe de tamanho da janela
material3-window-size-class
é uma nova biblioteca que oferece suporte a classes de tamanho de janela: um conjunto de pontos de interrupção opinativos de janela de visualização para você projetar, desenvolver e testar layouts redimensionáveis de aplicativos. Você pode usar acalculateWindowSizeClass
para extrair uma instância de classe de tamanho de janela, que pode ser usada para determinar como a interface vai aparecer. Por exemplo, é possível mostrar uma coluna de navegação em vez da navegação na parte de baixo em tamanhos de janela maiores. Veja mais informações e exemplos de uso na documentação de referência da API deWindowSizeClass
.Veja mais detalhes nesta postagem do blog (em inglês).
Versão 1.0.0-rc01
5 de outubro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-rc01
e androidx.compose.material3:material3-window-size-class:1.0.0-rc01
. A versão 1.0.0-rc01 contém estas confirmações.
Mudanças na API
- Foi adicionado um parâmetro de slot para oferecer suporte à API de campo de texto para texto (Iaac0d, b/227146125).
Versão 1.0.0-beta03
21 de setembro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-beta03
e androidx.compose.material3:material3-window-size-class:1.0.0-beta03
. A versão 1.0.0-beta03 contém estas confirmações.
Mudanças na API
ExposedDropdownMenuDefaults
agora expõe um valor de padding para itens de menu (I34ee1).ExposedDropdownMenuBoxScope
agora tem um modificadorModifier.menuAnchor()
que precisa ser transmitido para o campo de texto para um comportamento de acessibilidade adequado (I27fa3).- Adição de dois métodos sobrecarregados para a API Slider atual que permitem que os usuários passem um polegar ou uma faixa para preencher o controle deslizante (I21c00).
Correções de bugs
- O mapeamento de cores do tema escuro para On Error Container foi atualizado para o tom 90 (Ic5612).
- Correção para permitir a configuração de um segundo plano transparente para pequenas barras de apps do Material 3 (I645e2, b/245575782).
Versão 1.0.0-beta02
7 de setembro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-beta02
e androidx.compose.material3:material3-window-size-class:1.0.0-beta02
. A versão 1.0.0-beta02 contém estas confirmações.
Mudanças na API
- Os encartes de componentes padrão introduzidos nos componentes m3 na versão beta01 não consideram mais encartes do IME (editor de método de entrada, na sigla em inglês).
- O componente Scaffold do Material3 agora tem um parâmetro
contentWindowInsets
, que permite especificar a quantidade de encartes a serem processados no slot de conteúdo (Icf11a, b/243713323). - A função
SmallTopAppBar
experimental do Material 3 foi descontinuada e introduzimos uma funçãoTopAppBar
equivalente. Em vez disso, use a função nova (I74404, b/226918634). - Foi adicionado controle sobre os principais comportamentos de deslizar rapidamente e de ajuste da barra de apps (I15c81).
- O startIndent do foi removido do divisor e a cor foi movida para ser o último parâmetro (If7be2).
Correções de bugs
- As caixas de diálogo agora são identificadas para usuários do TalkBack com um aviso usando as palavras "caixa de diálogo" quando uma aparece (I857ef).
Versão 1.0.0-beta01
24 de agosto de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-beta01
e androidx.compose.material3:material3-window-size-class:1.0.0-beta01
. A versão 1.0.0-beta01 contém estas confirmações.
Referência da API
Para conferir os temas, componentes e outros elementos de composição mais recentes disponíveis, consulte a Visão geral de referência da API Compose Material 3.
Mudanças na API
- A barra de cima do app do Material 3 foi atualizada para poder ser fechada totalmente de um estado completamente aberto. Além disso, a função
TopAppBarDefaults
foi atualizada para ser de composição e fornecer valores padrão para o estado principal da barra de apps e a especificação da animação (I642b3). - As assinaturas de componentes do FAB foram atualizadas para corresponder à API da plataforma (I3afaa).
- Foi adicionado suporte integrado a encartes para as principais barras de apps, gavetas, barra de navegação e colunas. Quando esses componentes são usados separadamente ou com o Scaffold, eles processam de forma automática os encartes dos desenvolvedores. Observação: essa mudança não adiciona processamento automático dos ícones da barra de status e transparência das barras de status e de navegação. Continue fazendo isso manualmente para garantir a melhor experiência de ponta a ponta (I7e4e6, b/183161866).
- O padrão do componente foi atualizado para reduzir a superfície da API e melhorar a flexibilidade e performance no futuro (I31820).
- Os parâmetros da página da gaveta de navegação e dos ícones foram reorganizados para manter a consistência dentro da API (I45d0b).
- O elemento
startIndent
foi removido do divisor e a cor foi movida para ser o último parâmetro (If7be2).
Versão 1.0.0-alpha16
10 de agosto de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha16
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
. A versão 1.0.0-alpha16 contém estas confirmações.
Novos recursos
- Suporte para a especificação de uma largura personalizada em gavetas de navegação (Ia7f10).
Mudanças na API
- Os parâmetros da guia e da guia de ícones principais foram reordenados para manter a consistência na API (Ie2637).
BadgeDefaults
foi marcado como experimental (I98ef3).- A função de gaveta de navegação descontinuada foi removida (I4f2db).
- Os parâmetros do controle deslizante do Material 3 foram reordenados para manter a consistência na API (I0aee7).
- Os parâmetros
NavigationBar
eNavigationRail
foram reordenados para manter a consistência na API (I51cda). - Os parâmetros do Material 3 foram reordenados para manter a consistência na API (If4ae1).
- Os parâmetros do controle deslizante no Material 3 foram reordenados para manter a consistência dentro da API (I62673).
- O parâmetro de ícones foi renomeado como uma ação para consistência com a barra de apps superior (Id75be).
Badge
eBadgedBox
foram marcados como experimentais, porque o alinhamento da âncora ainda está em fluxo (I1712e, b/236524516).- Foram feitas mudanças nas anotações
@ExperimentalMaterial3Api
nas variantes do botão de ícone para@OptIn
(I070b5). - O conteúdo da gaveta de navegação foi separado em uma função de composição para oferecer suporte à especificação de uma largura personalizada (Ia7f10).
- O
Divider
foi removido deMenuDefaults
eTabDefaults
(I4e33c).
Versão 1.0.0-alpha15
27 de julho de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha15
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
. A versão 1.0.0-alpha15 contém estas confirmações.
Novos recursos
- Agora é possível arrastar a barra de apps superior usando a própria barra (I65c00, b/205873416).
Mudanças na API
- As APIs
FilterChip
eElevatedFilterChip
foram atualizadas para remover o slotselectedIcon
e promover a reutilização doleadingIcon
para exibir um estado selecionado (Ie5dc2). - Foram adicionados papéis de cor de variante scrim e contorno (Id6d54).
- Foram corrigidas as convenções de nomenclatura para padrões de composição (I62b27).
ListItemDefaults
eListItemColors
foram marcados como experimentais (I1f3ec).- A API da barra de apps superior passou por mudanças para refletir melhor o significado das propriedades de estado. Além disso, ela foi marcada como experimental (Ic0ad8).
- As cores de seleção de texto foram adicionadas a
TextFieldColors
para melhorar a detecção do dispositivo (Iba1b8). ButtonDefault.ButtonWithIconContentPadding
foi adicionado para ser usado com botões que contêm um ícone (I2bf9c).- Os campos de texto foram marcados como experimentais para permitir mais flexibilidade em futuras mudanças na API (I127b5).
- A anotação
@ExperimentalMaterial3Api
foi removida da funçãoCheckbox
(I5eefc). - A anotação
@ExperimentalMaterial3Api
foi removida da funçãoRadioButton
(I17e2a). - A anotação
@ExperimentalMaterial3Api
foi removida dos cards não interativos (I9bd49). - Vários objetos padrão dos componentes foram atualizados para incluir cores, formas etc. (I96e11).
Correções de bugs
- Os ícones finais não funcionais foram removidos de exemplos de ícone de entrada para evitar confusão dos usuários no app de catálogo (I9846a).
Versão 1.0.0-alpha14
29 de junho de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha14
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
. A versão 1.0.0-alpha14 contém estas confirmações.
Novos recursos
- A implementação de lista M3 foi adicionada. Consulte a documentação para ver um exemplo de uso (Id7a20).
Mudanças na API
- Mudança do nome do parâmetro de valores para valor em
RangeSlider
(I3b79a). - A API passou por mudanças na implementação de
InputChip
a fim de oferecer suporte a um estado selecionável de acordo com a especificação do Material Design. Foi adicionado suporte extra às cores deFilterChip
para o estado desativado selecionado (I55244, b/235792432). - Adição do FAB padrão
BottomAppBar
(Ida4c8). - Adição de
ColorScheme.surfaceColorAtElevation
(Id41af). - As interfaces em bibliotecas de composição agora são criadas usando métodos de interface padrão do jdk8 (I5bcf1).
WindowWidthSizeClass
eWindowHeightSizeClass
agora implementam elementos Comparable para que possam ser comparados usando operadores (<, <=, >=, >) e outras APIs (I747d0).
Correções de bugs
- Atualizada a amostra do ícone para fornecer uma descrição de conteúdo mais significativa (I10b9d).
- Adicionada a opção de usar o tamanho da fonte do sistema no seletor de temas do catálogo do Material 3 (I10605).
- Adicionado um exemplo de código para indicadores de progresso indeterminado e do ícone (I8fbe0).
Versão 1.0.0-alpha13
1º de junho de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha13
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
. A versão 1.0.0-alpha13 contém estas confirmações.
Mudanças na API
- Permite manter a posição superior da barra de apps na mudança de configuração (I10459, b/216160958).
Versão 1.0.0-alpha12
18 de maio de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha12
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
. A versão 1.0.0-alpha12 contém estas confirmações.
Correções de bugs
- O controle deslizante pai agora pode ter 0 largura (b/231707291).
Versão 1.0.0-alpha11
11 de maio de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha11
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
. A versão 1.0.0-alpha11 contém estas confirmações.
Novos recursos
- O
RangeSlider
foi adicionado ao Material 3 (I18e38). - Foi adicionado suporte para
AssistChip
eInputChip
no Material3 (I0d25a). - Foi adicionado suporte para
FilterChip
eSuggestionChip
no Material3 (I9fdf3).
Mudanças na API
- O elemento combinável
TextFieldDefaults.BorderStroke
que desenha um traço de borda emOutlinedTextField
foi renomeado comoTextFieldDefaults.BorderBox
(I5f295). - Mudanças visuais no m3 (Iab30e).
- Permissão para transmitir cores aos botões de ícone padrão (Ia2445).
Correções de bugs
- Foi adicionada a verificação de lint a material3/Scaffold para garantir que o padding interno seja usado (I72293, b/226951418).
Versão 1.0.0-alpha10
20 de abril de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha10
e androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
. A versão 1.0.0-alpha10 contém estas confirmações.
Novos recursos
material3-window-size-class
é uma nova biblioteca que oferece suporte a classes de tamanho de janela: um conjunto de pontos de interrupção opinativos de janela de visualização para você projetar, desenvolver e testar layouts redimensionáveis de aplicativos. Você pode usar acalculateWindowSizeClass
para extrair uma instância de classe de tamanho de janela, que pode ser usada para determinar como a interface vai aparecer. Por exemplo, é possível mostrar uma coluna de navegação em vez da navegação na parte de baixo em tamanhos de janela maiores. Veja mais informações e exemplos de uso na documentação de referência da API deWindowSizeClass
. Para mais informações sobre definições de classe de tamanho de janela, consulte a orientação pública sobre como oferecer suporte a diferentes tamanhos de tela.
Mudanças na API
- Foi adicionada uma elevação padrão do FAB para a
BottomAppBar
e a lambda final deBottomAppBar
com o FAB foi removida (I92c47). - Foram adicionados os elementos
FilledIconButton
,FilledTonalIconButton
eOutlinedIconButton
do Material3 (Ib2bda). - A API Snackbar do Material 3 foi atualizada para aceitar valores de cor para a ação opcional e a de dispensa (Ibe4b4).
- O consumo parcial (para baixo OU na posição) foi descontinuado em
PointerInputChange
. Useconsume()
para consumir a mudança completamente. Você pode usarisConsumed
para determinar se outra pessoa já consumiu a mudança. - Agora, o
PointerInputChange::copy()
sempre faz uma cópia superficial. Isso significa que se uma cópia dePointerInputChange
for consumida, todas as outras também serão. Se você quiser criar umaPointerInputChange
desvinculada, use o construtor (Ie6be4, b/225669674). - Mudanças na API Cards para receber as cores do contêiner e do conteúdo por uma interface
CardColors
e oferecer suporte a um estado desativado para cards clicáveis (I927df). - O parâmetro
backgroundColor
foi renomeado comocontainerColor
nos campos de texto do Material 3 para melhorar a consistência com outros componentes (I6fbd9).
Correções de bugs
- O
IconButton
padrão foi atualizado para ficar alinhado à especificação do Material3 (I09eab). - A altura da barra de cima do Scaffold do Material3 foi movida para o padding transmitido ao conteúdo, permitindo que o conteúdo seja renderizado abaixo da barra de apps de cima. Se os
PaddingValues
forem ignorados, o conteúdo vai poder ser coberto pela barra de cima (I83cbc, b/217776202).
Versão 1.0.0-alpha09
6 de abril de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha09
. A versão 1.0.0-alpha09 contém estas confirmações.
Novos recursos
- A API Material 3 Switch foi adicionada (I2c3ad).
Mudanças na API
- Foi adicionado suporte a menus suspensos com campos de texto (também conhecidos como "menus suspensos expostos" ou "caixas de combinação") (I1b832).
- Foi adicionado um parâmetro de forma aos subsistemas MaterialTheme e Shape (I37426).
- Foi adicionado um parâmetro expandido a
ExtendedFloatingActionButton
para controlar se o FAB é expandido ou recolhido, com animações entre cada estado. Uma sobrecarga foi adicionada para FABs estendidos com texto à direita para ExtendedFABs sem ícone (Iba7f1).
Versão 1.0.0-alpha08
23 de março de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha08
. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
- Foi adicionado suporte aos campos de texto do Material 3 (I795cc, b/199377790).
Mudanças na API
- O divisor padrão foi incluído no menu (I01374).
- O parâmetro de cor
surfaceTint
foi adicionado à classeColorScheme
(I2f558).
Correções de bugs
- Correção no botão do Material3 para ler o valor do estilo de texto padrão do MaterialTheme (Ie62fc).
Versão 1.0.0-alpha07
9 de março de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha07
. A versão 1.0.0-alpha07 contém estas confirmações.
Mudanças na API
- A API Surface do Material Design 3, que traz as funções sobrecarregadas para superfícies clicáveis, além de adicionar uma função para oferecer suporte a superfícies selecionáveis e alternáveis, foi atualizada (I4bf18).
- As APIs
LazyVerticalGrid
eLazyHorizontalGrid
agora estão na versão estável (I307c0). LazyVerticalGrid/LazyHorizontalGrid
e todas as APIs relacionadas foram movidas para o subpacote .grid. Atualize as importações de androidx.compose.foundation.lazy para androidx.compose.foundation.lazy.grid (I2d446).- A mudança anterior foi revertida para depender apenas de uma visualização para
WindowInsetsControllerCompat
e voltou a exigir uma janela para gerenciar algumas flags. O uso deViewCompat.getWindowInsetsController
foi descontinuado e substituído porWindowCompat.getInsetsController
para garantir que a janela correta seja usada. Por exemplo, se a visualização estiver em uma caixa de diálogo (I660ae, b/219572936). - Uma nova API
LazyVerticalGrid
foi adicionada para definir o tamanho de eixos cruzados (I17723).
Correções de bugs
- Atualizações na API Card para acompanhar as mudanças na API Surface (I3c8b9).
Versão 1.0.0-alpha06
23 de fevereiro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha06
. A versão 1.0.0-alpha06 contém estas confirmações.
Mudanças na API
- A
NavigationDrawerItem
que representa um único destino nas gavetas foi adicionada (Ic396f, b/218286829). PermanentNavigationDrawer
eDismissibleNavigationDrawer
foram adicionadas como APIs experimentais. Essas são as gavetas adequadas para dispositivos de tela grande (I5f8ab, b/218286829).- Foi adicionado suporte à barra de baixo de apps do Material 3 (Ic432a).
- A interface
NavigationDrawer
foi renomeada comoModalNavigationDrawer
(I1807d, b/218286829). - Foram adicionados tokens e a classe de Slider do Material 3 (I1ccee).
- A implementação de guia foi adicionada. Consulte a documentação para ver um exemplo de uso (Ie0146).
Correções de bugs
- Corrigido um problema em que a navegação linear do leitor de tela
TalkBack
selecionava um título vazio para a barra de apps da parte de cima (Id4690). - O
IconSize
foi adicionado aFloatingActionButtonDefaults
(Ia71cf). - Um bug em que botões da
AlertDialog
ficavam ocultos quando um texto longo era adicionado com umaLazyColumn
foi corrigido (Ib2cc9, b/216663029).
Versão 1.0.0-alpha05
9 de fevereiro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha05
. A versão 1.0.0-alpha05 contém estas confirmações.
Novos recursos
Inclusão de componentes do Material Design 3
- Menu suspenso
- Cards
Mudanças na API
- A função
Surface
, que recebe um callback onClick, foi descontinuada. As superfícies clicáveis precisam ser criadas com umaInteractionSource
e umModifier.clickable()
(I211c6). - Inclusão de suporte para elevação pressionada e em foco para FAB (Ibb584).
- Mudança na API
Surface
para que receba uma InteractionSource, que permite controlar a aparência em estados diferentes (Iafbc8).
Correções de bugs
- Foram incluídas cores terciárias ausentes em esquemas de cores dinâmicas (I456c4, b/214588434).
Versão 1.0.0-alpha04
26 de janeiro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha04
. A versão 1.0.0-alpha04 contém estas confirmações.
Mudanças na API
- A anotação
NonRestartableComposable
foi adicionada a métodos que são sobrecargas de métodos já existentes sem lógica complexa. Isso reduz as verificações de memorização geradas pelo compilador (igual a) para todos os parâmetros repetidos na função interna chamada (I90490). - Adição do divisor do Material 3 (Ica5fc).
- Marcação da caixa de seleção e RadioButton com uma anotação de API experimental (Ie44bb).
- Inclusão de suporte para indicadores de progresso do Material 3 (Iff232, b/205023841).
Correções de bugs
- Atualização da cor de um contêiner
TextButton's
desativado para que ele fique transparente (I6b248, b/213339737).
Versão 1.0.0-alpha03
12 de janeiro de 2022
Lançamento de androidx.compose.material3:material3:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Correções de bugs
- Adição da
LocalIndication
aoMaterialTheme
do Material 3 (I7ce4e). - Correção do raio dos cantos aplicado às caixas de seleção (I38b03, b/175198975, b/202309440).
Atualizações de dependência
- Agora depende do Kotlin
1.6.10
.
Versão 1.0.0-alpha02
1º de dezembro de 2021
Lançamento de androidx.compose.material3:material3:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Novos recursos
- Foi adicionado suporte a caixas de seleção e botões de opção.
- Foi adicionada compatibilidade com o Kotlin
1.6.0
.
Mudanças na API
- A gaveta do scaffold foi removida do Material 3 (I04f51).
- Adicionado suporte ao
Checkbox
do Material 3 (Id5542). - Adicionado suporte ao
RadioButton
do Material 3 (I20334).
Correções de bugs
- O raio da ondulação do
IconButton
foi removido de 40dp para 20dp (I68bbe, b/206674345). - Caminho rápido da string de porta para mudanças de
Text
decompose.material
(I30b03). - O botão fixado no código foi corrigido para que ele fique sempre ativado (Iea832, b/205335456).
Versão 1.0.0-alpha01
27 de outubro de 2021
Lançamento de androidx.compose.material3:material3:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
Temas do Material Design 3 e cores dinâmicas do Material You
Componentes do Material Design 3
- Botões
- FAB e FAB estendido
- Caixas de diálogo
- Barra de navegação
- Gaveta de navegação
- Coluna de navegação
- Barra de apps de cima
- Ícone
- Ícone
- Texto
- Superfície
- Layout
- Cor do conteúdo
Para ver mais informações, consulte a seção Material Design 3 e Material You no guia Temas do Material Design no Compose.