Temos uma novidade incrível: o Material 3 Adaptive 1.2.0 agora está na versão estável.
Esta versão continua a se basear nos fundamentos das versões anteriores, ampliando o suporte a mais pontos de interrupção para classes de tamanho de janela e novas estratégias para posicionar painéis de exibição automaticamente.
Novidades no Material 3 Adaptive 1.2.0
Esta versão estável é criada com base no suporte do WindowManager 1.5.0 para pontos de interrupção grandes e extragrandes e apresenta as novas estratégias de reflow e levitate para ListDetailPaneScaffold e SupportingPaneScaffold.
Novas classes de tamanho de janela: grande e extragrande
O WindowManager 1.5.0 introduziu dois novos pontos de interrupção para a classe de tamanho de janela de largura, oferecendo suporte a janelas ainda maiores do que a classe de tamanho de janela expandida. Para ativar os pontos de interrupção grande (L) e extra grande (XL), adicione o seguinte parâmetro à chamada currentWindowAdaptiveInfo() na sua base de código:
currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)
Essa flag permite que a biblioteca também retorne pontos de interrupção L e XL sempre que necessário.
Novas estratégias adaptativas: reflow e levitate
Organizar conteúdo e painéis de exibição em uma janela é uma tarefa complexa que precisa considerar muitos fatores, começando pelo tamanho da janela. Com a nova biblioteca adaptável do Material 3, duas novas tecnologias podem ajudar você a criar um layout adaptável com o mínimo de esforço.
Com o reflow, os painéis são reorganizados quando o tamanho da janela ou a proporção mudam, colocando um segundo painel ao lado do primeiro quando a janela é larga o suficiente ou reflow o segundo painel abaixo do primeiro sempre que a janela é mais alta. Essa técnica também se aplica quando a janela diminui: o conteúdo é reordenado para a parte de baixo.
Refluxo de um painel com base no tamanho da janela
Embora o reflow seja uma opção incrível em muitos casos, pode haver situações em que o conteúdo precise ser ancorado em um lado da janela ou levitado sobre ela. A estratégia de levitação não apenas acopla o conteúdo, mas também permite personalizar recursos como capacidade de arrastar e redimensionar, além da tela de fundo.
Levitar um painel da lateral para o centro com base na proporção
As estratégias de fluxo e levitação podem ser declaradas no construtor Navigator usando o parâmetro adaptStrategies, e ambas podem ser aplicadas aos painéis de detalhes e listas e de suporte scaffolds:
val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>( adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies( detailPaneAdaptStrategy = AdaptStrategy.Reflow( reflowUnder = ListDetailPaneScaffoldRole.List ), extraPaneAdaptStrategy = AdaptStrategy.Levitate( alignment = Alignment.Center ) ) )
Para saber mais sobre como aproveitar essas novas estratégias adaptáveis, consulte o site do Material e o exemplo de código completo no GitHub.
-
Novidades sobre produtosHoje, temos o prazer de anunciar o lançamento estável das bibliotecas AndroidX Security State versão 1.1.0 e Security State Provider versão 1.0.0.
Maunik Shah, Alec Garcia, Joseph Yong • Leitura de 4 minutos -
Novidades sobre produtosHoje, estamos lançando o primeiro conjunto de tarefas de longo prazo (LHT, na sigla em inglês), que são tarefas de grande complexidade que levam vários dias ou até uma semana para serem concluídas por um engenheiro. Também estamos lançando a avaliação com agentes, começando com agentes dos provedores de modelos correspondentes.
Matthew McCullough • Leitura de 3 minutos -
Novidades sobre produtosA depuração por Wi-Fi no Android agora é mais rápida, confiável e fácil de configurar do que nunca. Com o ADB Wi-Fi 2.0, apresentamos uma nova pilha de servidores e um tratamento de rede mais inteligente para resolver diretamente o feedback dos desenvolvedores sobre lacunas de usabilidade.
Steven Jenkins, Sherif Eid, Fabien Sanglard • Leitura de 1 minuto
Receba os insights mais recentes sobre desenvolvimento Android na sua caixa de entrada semanalmente.