Compose Material 3 Adaptive
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.1.0 | - | - | 1.2.0-alpha08 |
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 ver 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.adaptive:adaptive:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
Kotlin
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
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 Adaptive: versão 1.2
Versão 1.2.0-alpha08
2 de julho de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08
. A versão 1.2.0-alpha08 contém estas confirmações.
Versão 1.2.0-alpha07
18 de junho de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha07
. A versão 1.2.0-alpha07 contém estas confirmações.
Mudanças na API
- Faça com que a função
currentWindowAdaptiveInfo()
ofereça suporte a classes de tamanho de largura de janela grande e extragrande e promova as funçõescalculatePosture()
ecurrentWindowDpSize()
para estáveis. (I92e97).
Versão 1.2.0-alpha06
20 de maio de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06
. A versão 1.2.0-alpha06 contém estas confirmações.
Novos recursos
- Agora, as funções de cálculo de diretiva de estrutura de painel padrão são compatíveis com classes de tamanho de largura de janela L e XL.
Mudanças na API
- Faça com que o
Modifier.paneExpansionDraggable
forneça semântica de acessibilidade padrão e promova APIs relevantes para estáveis. (Idb818). - Suporte a arrastar para redimensionar com painéis elevados (Idadd3)
- Adição de scrims de suporte para painéis elevados (I9b091).
Versão 1.2.0-alpha05
7 de maio de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05
. A versão 1.2.0-alpha05 contém estas confirmações.
Novos recursos
- Os layouts adaptáveis do Material3 agora oferecem suporte a estratégias de adaptação Levitated, que podem transformar um painel em um pop-up flutuante.
Mudanças na API
- Fazer com que as funções de tamanho da janela atual ofereçam suporte a várias plataformas (Ie4172)
- Introdução de movimentos de painel para painéis elevados (Ic9dc3)
- Introdução da estratégia de levitação para adaptação (I1ba7c)
Correções de bugs
- Correção do uso do escopo de corrotina em exemplos adaptáveis (7631016)
Versão 1.2.0-alpha04
23 de abril de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04
. A versão 1.2.0-alpha04 contém estas confirmações.
Novos recursos
- As estratégias de reflow agora estão disponíveis com
ListDetailPaneScaffold
eSupportingPaneScaffold
, que refazem o fluxo do painel associado em uma configuração de layout de painel único.
Mudanças na API
- Adição do suporte de estado salvável ao
PaneScaffoldScope
(Id9299). - Introdução da estratégia de reflow para adaptação (I75c6a)
Correções de bugs
- Correção do bug em que os painéis não são animados na primeira transição. (Ib0415).
- Correção de alturas preferidas que não funcionam. (I1913b)
- Correção do bug em que a diretiva de estrutura não era atualizada corretamente. (0403ab).
Versão 1.2.0-alpha03
9 de abril de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03
. A versão 1.2.0-alpha03 contém estas confirmações.
Correções de bugs
- Correção do problema em que a alça de arrastar era mostrada incorretamente no layout de painel único. (806e443 )
Atualizações de dependência
- Essa biblioteca agora é destinada ao nível de linguagem Kotlin 2.0 e exige o KGP 2.0.0 ou mais recente. (Idb6b5)
Versão 1.2.0-alpha02
26 de março de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02
. A versão 1.2.0-alpha02 contém estas confirmações.
Versão 1.2.0-alpha01
12 de março de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01
. A versão 1.2.0-alpha01 contém estas confirmações.
Mudanças na API
- Introduzimos o modificador
PaneScaffoldScope.preferredHeight
para que os desenvolvedores forneçam alturas preferenciais de painel que serão aplicadas com as novas estratégias de adaptação que vamos apresentar. (I957dd, b/220960090). - Renomeie os tipos
ComponentOverride
paraOverride
e os tiposComponentOverrideContext
paraOverrideScope
. (Id973c). - Renomeie alguns métodos de substituição de componentes. (I222b3).
Compose Material3 Adaptive: versão 1.1
Versão 1.1.0
12 de março de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0
. A versão 1.1.0 contém estas confirmações.
Mudanças importantes desde a versão 1.0.0
- O
ListDetailPaneScaffold
e oSupportingPaneScaffold
agora oferecem suporte ao recurso de expansão do painel. Os usuários podem arrastar para mudar a divisão padrão de um layout de painel duplo. Os desenvolvedores também podem mudar a divisão do painel durante a execução alterando oPaneExpansionState
recém-introduzido. - O suporte padrão para volta preditiva agora está disponível com
NavigableListDetailPaneScaffold
eNavigableSupportingPaneScaffold
. Você também pode usarThreePaneScaffoldPredictiveBackHandler
para oferecer suporte ao retorno preditivo com suas próprias implementações de estrutura de três painéis. - Agora você pode personalizar os movimentos do painel durante a troca fornecendo diferentes
EnterTransition
eExitTransition
paraAnimatedPane
.
Versão 1.1.0-rc01
26 de fevereiro de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
Correções de bugs
- Desativar o escalonamento de volta preditiva do scaffold de três painéis (ab6fd0b)
Versão 1.1.0-beta02
12 de fevereiro de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02
. A versão 1.1.0-beta02 contém estas confirmações.
Mudanças na API
- Mudança na forma como
isPredictiveBackInProgress
é definido nas funções de animaçãoMutableThreePaneScaffoldState
para preservar a consistência do estado. (Idc97f)
Correções de bugs
- O comportamento padrão de retorno de
NavigableListDetailPaneScaffold
eNavigableSupportingPaneScaffold
foi alterado paraPopUntilScaffoldValueChange
para consistência com o restante da biblioteca. (I873f0). - Defina a ordem correta de travessia de acessibilidade dos scaffolds de painel. (67d030)
- Correção do problema em que os estados de conteúdo do painel não são salvos. (88b0ff)
- Oferecer suporte a ações de acessibilidade alternativas em vez de arrastar. (28266d).
- Anuncia a divisão do painel atual depois que ela é alterada. (0c3a80)
Versão 1.1.0-beta01
29 de janeiro de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01
. A versão 1.1.0-beta01 contém estas confirmações.
Mudanças na API
- Introduzir funções de fábrica para criar âncoras de expansão de painel do tipo de deslocamento do início e do fim, respectivamente. (I2eb21).
- Selar a interface
PaneMotion
e remover os métodos de transição padrão dela. (Ifc4c7). - Introduzir APIs para receber a âncora atual e animar até uma âncora. (Icf95d).
- Introdução de APIs de acessibilidade para expansão de painéis (Icc669)
- Mude o tipo de
PaneScaffoldParentData.preferredWidth
para DP. (Id98ee)
Versão 1.1.0-alpha09
15 de janeiro de 2025
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09
. A versão 1.1.0-alpha09 contém estas confirmações.
Mudanças na API
- Adicione e use a nova anotação experimental
ExperimentalMaterial3AdaptiveComponentOverrideApi
. (Id45aa). - Oculte
ThreePaneScaffoldHorizontalOrder.toLtrOrder
. (I6f8d2). - O
ThreePaneScaffoldPredictiveBackHandler
foi publicado. (I1a995, b/370543873). - A propriedade
isPredictiveBackInProgress
foi adicionada aThreePaneScaffoldState
. (I1a995, b/370543873). - Crie um mecanismo de substituição para
AnimatedPane
e ofereça suporte a implementações de sideloading para diferentes formatos. (Id7622)
Correções de bugs
- Correção do problema quando a direção de ajuste não tem fixações. (df8257d)
Versão 1.1.0-alpha08
12 de dezembro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08
. A versão 1.1.0-alpha08 contém estas confirmações.
Mudanças na API
- Introdução da função
currentWindowDpSize
. (I99125, b/296300441). - Exposição de
PaneScaffoldParentData
eThreePaneScaffoldHorizontalOrder.toLtrOrder()
(I2d6b7). - Remova
PaneScaffoldMotionScope
e transforme em um campo emPaneScaffoldTransitionScope
. Renomeie também paraPaneScaffoldMotionDataProvider
e remova o acesso à estrutura de dados subjacente de PaneMotionData. Em vez disso, forneça métodos getter e de loop para acessar os dados. (Id8884). - Crie um mecanismo de substituição para
ThreePaneScaffold
e ofereça suporte a implementações de sideloading para diferentes formatos. (I5280f). - Faz com que o estado de expansão do painel seja nulo por padrão (Ia65f8, b/376394520).
Versão 1.1.0-alpha07
13 de novembro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
. A versão 1.1.0-alpha07 contém estas confirmações.
Mudanças na API
- Remova a implementação da alça de arrastar na biblioteca adaptativa e incentive as pessoas a usar a versão M3 dela. Ao mesmo tempo, introduza um modificador para fornecer a capacidade de arrastar a expansão do painel a um elemento combinável de alça de arrastar fornecido. Também vamos ocultar
DraggableState
como um detalhe de implementação para que possamos mudar isso mais tarde, se necessário. (Ib50cd). - Move o ponto de entrada da personalização de movimento do painel das funções de scaffold para
AnimatedPane
de acordo com o feedback da UXR. (I10f72). - Introdução do suporte a deslizar rapidamente e especificação de animação personalizada para expansão do painel. (Ie207d, b/362584341)
Correções de bugs
- Correção de problemas de volta preditiva no cancelamento. (36a3e0a), (b/369899645)
Versão 1.1.0-alpha06
30 de outubro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06
. A versão 1.1.0-alpha06 contém estas confirmações.
Mudanças na API
FloatRange
foi adicionada aPaneScaffoldTransitionScope.motionProgress
. (Iac0dd).- Mude o tipo de parâmetros do navegador para tipos genéricos em estruturas navegáveis. (I1da6e).
Versão 1.1.0-alpha05
16 de outubro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
. A versão 1.1.0-alpha05 contém estas confirmações.
Mudanças na API
- Introduzimos a classe de especificações de animação para garantir um comportamento de movimento mais consistente e capacidade de expansão futura. (I2d3cc).
- Forneça o tipo de movimento e renomeie currentXXXXX em
PaneMotionData
para originXXXX. (I7c61a).
Versão 1.1.0-alpha04
2 de outubro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04
. A versão 1.1.0-alpha04 contém estas confirmações.
Novos recursos
- Adição de suporte à volta preditiva em
NavigableListDetailPaneScaffold
eNavigableSupportingPaneScaffold
. (I4dc21, b/359616816).
Mudanças na API
- A
ThreePaneScaffoldState
foi adicionada aThreePaneScaffoldNavigator
. Os métodos de navegação foram feitossuspend
para oferecer suporte à navegação com animação. Adição deseekBack
para oferecer suporte a estados de navegação parcial (por exemplo, volta preditiva). (I5a651, b/359616816) - Adição de
MutableThreePaneScaffoldState
para controlar a transição entre valores de estrutura. OThreePaneScaffoldState
atual foi definido como somente leitura. (Idb3c6). - Exposição das implementações de movimento do painel padrão (I95a7b).
- Permitir a definição da âncora inicial do estado de expansão do painel (Ie41b3, b/362350560).
Correções de bugs
- Aplicar o tamanho mínimo de destino de toque de 48x48 dp da alça de arrastar (7ce6635, b/366018217).
- Restauração da posição ancorada após mudanças de configuração (3c9fc6b, b/362353672)
Versão 1.1.0-alpha03
18 de setembro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03
. A versão 1.1.0-alpha03 contém estas confirmações.
Versão 1.1.0-alpha02
4 de setembro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
. A versão 1.1.0-alpha02 contém estas confirmações.
Novos recursos
- A personalização de movimento (I0bf9c), (I80e66) é compatível para que os criadores mudem os movimentos padrão durante as mudanças de estado do scaffold adaptável. Os criadores podem escolher entre um conjunto de transições de entrada e saída padrão ou implementar transições totalmente personalizadas com as informações fornecidas pelos novos escopos de movimento.
- Implementar animação de fade-in das alças de arrastar para expandir o painel (46e3c69)
- Agora, o
PaneExpansionState
lembrado pode ser salvo (61ff76f).
Mudanças na API
- Adição de APIs de expansão de painel ausentes a estruturas (Ic5bc0)
- O elemento
ThreePaneScaffoldDestinationItem.content
foi renomeado comocontentKey
. O argumento de tipo padrãorememberListDetailPaneScaffoldNavigator
erememberSupportingPaneScaffoldNavigator
mudou deNothing
paraAny
. (I58749). - Marcar
ThreePaneScaffoldState
como estável (I64aec) - Definir o escopo dos parâmetros de alça de arrastar (Ic0aa2)
Versão 1.1.0-alpha01
21 de agosto de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01
. A versão 1.1.0-alpha01 contém estas confirmações.
Novos recursos
- Introduzir a compatibilidade com a expansão do painel de estruturas adaptáveis.
Mudanças na API
- Introdução das APIs de expansão de painel ao público (I301d6)
- Introduzimos
ThreePaneScaffoldState
para controlar as transições de valor do painel. Adicionadas sobrecargas deListDetailPaneScaffold
eSupportingPaneScaffold
que aceitam esse estado. (I5db3b). - Introdução da chave de expansão do painel e da interface do provedor de chaves (Id621f)
Correções de bugs
- Correção do cálculo incorreto de partição quando uma dobradiça excluída está presente. (9dfd483)
Compose Material3 Adaptive: versão 1.0
Versão 1.0.0
4 de setembro de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0
. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
- Funções combináveis de uma linha
currentWindowSize()
,collectFoldingFeaturesAsState()
ecurrentWindowAdaptiveInfo()
para receber as informações necessárias da janela e adaptar apps, como tamanhos de janela e recursos de dobra. ListDetailPaneScaffold
eSupportingPaneScaffold
para fornecer dois layouts canônicos do Material3 que se adaptam automaticamente de acordo com diferentes configurações de janela. Esses dois modelos também são totalmente personalizáveis para atender às diferentes necessidades dos criadores.ThreePaneScaffoldNavigator
e as funções de lembrança relevantes,rememberListDetailPaneScaffoldNavigator()
erememberSupportingPaneScaffoldNavigator()
, para fornecer soluções de navegação em um scaffold adaptável, que pode mostrar vários destinos de navegação ao mesmo tempo, em comparação com a configuração comum de um destino por vez no mundo não adaptável.- Animações padrão e integradas do Material3 ao mudar os estados do scaffold adaptável.
Versão 1.0.0-rc01
21 de agosto de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
. A versão 1.0.0-rc01 contém estas confirmações.
Correções de bugs
- Correção do cálculo incorreto de partição quando uma dobradiça excluída está presente. (9dfd483)
Versão 1.0.0-beta04
26 de junho de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
. A versão 1.0.0-beta04 contém estas confirmações.
Correções de bugs
- Corrige o problema em que, quando os limites da dobradiça são atualizados, o layout não é atualizado de acordo. (71e9cf1)
Versão 1.0.0-beta03
12 de junho de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
. A versão 1.0.0-beta03 contém estas confirmações.
Correções de bugs
- Corrige falhas causadas pela resolução incorreta de dependências na versão beta02.
Versão 1.0.0-beta02
29 de maio de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
. A versão 1.0.0-beta02 contém estas confirmações.
Versão 1.0.0-beta01
14 de maio de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
. A versão 1.0.0-beta01 contém estas confirmações.
Versão 1.0.0-alpha12
1º de maio de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
. A versão 1.0.0-alpha12 contém estas confirmações.
Mudanças na API
- Adição de informações de
isFlat
aHingeInfo
(Ie0516, b/333784198). - As APIs adaptáveis não são mais experimentais (I1d038).
- As APIs de layout adaptável não são mais experimentais (Id23df).
- Mudança de
BackNavigationBehavior
de uma enumeração para uma classe de valor (Id8757).
Correções de bugs
- Mudar a fração de transição para uma lambda (I6f5a9)
- Correção do problema de estado inicial de
SizeTracker
(18326a9). - Incluir lista de dobradiças na verificação de igualdade
Posture
(6687137)
Versão 1.0.0-alpha11
17 de abril de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
. A versão 1.0.0-alpha11 contém estas confirmações.
Mudanças na API
- Faça com que as interfaces de escopo sejam seladas. (Iefa57).
- Apresente
AnimatedPaneScope
. (I62d73, b/332750742). - Deixar
AdaptStrategy
selado e estável. (Ia28b2). - Introduza um método de cópia de
PaneScaffoldDirective
. (I9291f) ThreePaneScaffoldScope
foi marcado como experimental. (I9d527).- Forneça APIs de scaffolding fáceis de usar que ofereçam suporte à navegação. (I263f0, b/321010778).
Versão 1.0.0-alpha10
3 de abril de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10
. A versão 1.0.0-alpha10 contém estas confirmações.
Mudanças na API
- Tornar a largura preferida padrão adaptável e personalizável. (Ic3abc).
- Renomeie as funções de cálculo de diretivas de scaffolding. (I10855).
- Remova paddings e encartes das APIs de scaffold. (I786f8).
- Adicione métodos de lembrete do navegador sem tipos genéricos. (I607c3)
Versão 1.0.0-alpha09
20 de março de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
. A versão 1.0.0-alpha09 contém estas confirmações.
Mudanças na API
- Adicione campos de transição de estado a
ThreePaneScaffoldScope
. (I3d917). - Reordene os parâmetros de scaffolding. (I4dff5).
- Forneça o valor padrão do parâmetro modificador
AnimatedPane
. (I77dd7).
Correções de bugs
- Inclua o tamanho do espaçador nos movimentos do painel. (a3174ca)
Versão 1.0.0-alpha08
6 de março de 2024
Lançamento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
- Implemente o deslizamento atrasado ao trocar de painéis. (I1a38e).
Mudanças na API
- A interface
ThreePaneScaffoldState
foi removida. (I63f23).
Versão 1.0.0-alpha07
21 de fevereiro de 2024