Wear Compose

  
Crie aplicativos do Jetpack Compose para dispositivos wearable oferecendo funcionalidade compatível com dispositivos, tamanhos, formas e gestos de navegação específicos para eles.
Atualização mais recente Versão estável atual Próximo candidato a lançamento Versão Beta Versão Alfa
1.º de setembro de 2021 - - - 1.0.0-alpha05

Declarar dependências

Para adicionar uma dependência ao Wear, 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 no arquivo build.gradle para seu app ou módulo:

Groovy

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.0.0-alpha06"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.0.0-alpha06"
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.0.0-alpha06")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.0.0-alpha06")
}

Para ver 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 existentes nesta biblioteca antes de criar um novo. Adicione seu voto a um problema existente clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Versão 1.0.0

Versão 1.0.0-alpha05

1.º de setembro de 2021

Lançamento de androidx.wear.compose:compose-foundation:1.0.0-alpha05 e androidx.wear.compose:compose-material:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.

Mudanças na API

  • O elemento ArcPaddingValues foi marcado como @Stable (I57deb).
  • A classe ScalingLazyColumnState agora implementa a interface ScrollableState, oferecendo aos desenvolvedores acesso programático para rolar o componente (I47dbc).

Correções de bugs

  • Reduzimos o espaçamento entre o ícone e o texto nos elementos Chip e ToggleChip para deixá-los alinhados com as atualizações da especificação da UX (I83802).

Versão 1.0.0-alpha04

18 de agosto de 2021

Lançamento de androidx.wear.compose:compose-foundation:1.0.0-alpha04 e androidx.wear.compose:compose-material:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.

Novos recursos

  • Adição de uma API SwipeToDismissBox e de um modificador deslizante que podem ser usados para oferecer suporte a um gesto de deslizar da esquerda para a direita a fim de dispensar um elemento. Embora sejam independentes dos componentes de navegação, esses elementos podem ser usados para sair de uma tela e navegar para a outra. Foram adicionados testes de integração à demonstração de deslizar para dispensar (I7bbaa).
  • As interfaces ScalingLazyColumnItemInfo e ScalingLazyColumnLayoutInfo foram adicionadas à classe ScalingLazyColumnState para permitir que os desenvolvedores saibam as posições e os tamanhos reais dos itens em ScalingLazyColumn após a aplicação do escalonamento. Também corrigimos um bug na forma como o escalonamento era calculado ao aplicar o preenchimento de conteúdo da parte superior ao componente ScalingLazyColumn (I27c07).

Mudanças na API

  • A classe CurvedTextStyle foi adicionada para especificar opções de estilo de texto curvas. Ela é semelhante a TextStyle, mas agora só oferece suporte aos elementos color, fontSize e background. Mais opções de estilo serão adicionadas no futuro (I96ac3).
  • As interfaces ScalingLazyColumnItemInfo e ScalingLazyColumnLayoutInfo foram adicionadas à classe ScalingLazyColumnState para permitir que os desenvolvedores saibam as posições e os tamanhos reais dos itens em ScalingLazyColumn após a aplicação do escalonamento. Também corrigimos um bug na forma como o escalonamento era calculado ao aplicar o preenchimento de conteúdo da parte superior ao componente ScalingLazyColumn Por fim, (I27c07).
  • A anotação @ExperimentalWearMaterialApi foi adicionada à enumeração SwipeDismissTarget, parte da API SwipeToDismissBox (I48b5e).

Correções de bugs

  • Adição de material de teste para a API SwipeToDismissBox (I9febc).

Versão 1.0.0-alpha03

4 de agosto de 2021

Lançamento de androidx.wear.compose:compose-foundation:1.0.0-alpha03 e androidx.wear.compose:compose-material:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.

Mudanças na API

  • Adição do componente CurvedText, que permite que os desenvolvedores escrevam texto seguindo a curvatura de um círculo, geralmente na borda de uma tela circular (Id1267).
  • Renomeamos CardDefaults.imageBackgroundPainter() como CardDefaults.imageWithScrimBackgroundPainter() para deixar claro que a imagem de plano de fundo tem um scrim desenhado sobre ela (I53206).
  • Adição do componente ScalingLazyColumn. Com ele, é acrescentado um componente de lista para o Wear Material que oferece uma visualização olho de peixe, com o conteúdo da lista diminuindo de tamanho e ficando transparente à medida que a imagem é escalonada em direção à borda do componente (I7070c).

Correções de bugs

  • Mudamos a cor padrão do conteúdo do appName no AppCard em resposta a uma atualização das especificações de UX. A cor padrão do appName agora é MaterialTheme.colors.onSurfaceVariant. Além disso, adicionamos uma descrição do documento de parâmetro para o espaço do título (Ic4ad1).

Versão 1.0.0-alpha02

21 de julho de 2021

Lançamento de androidx.wear.compose:compose-foundation:1.0.0-alpha02 e androidx.wear.compose:compose-material:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.

Novos recursos

  • Uma nova classe, CurvedRow, foi adicionada para dispor elementos que possam ser compostos em um arco (I29941).
  • Um novo tipo de card, TitleCard, foi acrescentado para uso em apps, além de compatibilidade com imagens, como o plano de fundo em cards para enfatizar o conteúdo deles (I53b0f).

Mudanças na API

  • A CurvedRow passou a ter compatibilidade com o alinhamento radial, semelhante ao alinhamento vertical em uma linha (Id9de5).
  • Uma nova classe, CurvedRow, foi adicionada para dispor elementos que possam ser compostos em um arco (I29941).
  • Um novo tipo de card, TitleCard, foi acrescentado para uso em apps, além de compatibilidade com imagens, como o plano de fundo em cards para enfatizar o conteúdo deles (I53b0f).
  • Foram adicionados ícones de alternância (caixa de seleção, interruptor e botões de opção) ao ToggleChipDefaults para facilitar a configuração de ToggleChip e SplitToggleChips para os desenvolvedores (I7b639).
  • O padding do conteúdo inicial e final do Chips foi atualizado, para ficar sempre em 14 dp, independentemente de o Chip ter um ícone ou não. Anteriormente, eram 12.dp se o ícone estivesse presente e 14.dp se não estivesse (I34c86).

Correções de bugs

  • Foram adicionados testes à CurvedRow (I93cdb).
  • As dependências do Wear Compose foram vinculadas ao Compose 1.0.0-rc01 (Ie6bc9).
  • O processamento da pintura de imagens de plano de fundo no Cards e no Chips mudou para que a imagem fosse cortada, em vez de esticada, para manter as proporções de imagem (I29b41).
  • Mais demonstrações e testes de integração foram acrescentados ao Button e ao SwitchButton (5e27ed2).
  • Mais testes de Chip foram adicionados para cobrir as cores de conteúdo para imageBackgroundChips (Ia9183).

Versão 1.0.0-alpha01

1º de julho de 2021

Lançamento de androidx.wear.compose:compose-foundation:1.0.0-alpha01 e androidx.wear.compose:compose-material:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.

Novos recursos

O Wear Compose é uma biblioteca baseada em Kotlin, compatível com Compose e com Wear Material Design, uma extensão do Material Design para wearables WearOS. Esta primeira versão alfa contém implementações práticas e funcionais do seguinte:

  • Tema do Material Design: configura as cores, tipografia e formas de forma consistente nos componentes usados nessa biblioteca.
  • Chip, CompactChip: os chips têm forma de estádio e as variantes estão disponíveis para o conteúdo de ícones, rótulos e rótulos secundários.
  • - ToggleChip, SplitToggleChip: um tipo especializado de chip que inclui um slot para um ícone de alternância de dois estados, como um botão de opção ou caixa de seleção. Além disso, o SplitToggleChip tem duas áreas tocáveis, uma clicável e uma alternável.
  • Botão, CompactButton: os botões são circulares em forma, com um único local de conteúdo para um ícone ou texto mínimo (máximo de três (3) caracteres).
  • ToggleButton: um botão que ativa ou desativa uma ação, com um único slot para ícone ou mínimo de texto (máximo de três (3) caracteres).
  • Card, AppCard: em forma retangular com cantos arredondados, oferecendo espaços para conteúdo como ícone, horário, título e corpo do app.

As versões futuras ampliarão a compatibilidade do conjunto de widgets para que eles sejam adicionados aos seletores, controles deslizantes, listas, indicadores de páginas, caixas de diálogo, indicadores de rolagem, avisos e muito mais.

Além disso, a compatibilidade será fornecida para outros recursos específicos de wearable, como layouts e textos curvos, além de andaimes, para facilitar a criação de apps/sobreposições de desenvolvedores.

O Wear Compose Material foi projetado com os mesmos princípios do Compose Material, embora seja direcionado para wearables. A biblioteca Wear Compose Material deve ser usada no lugar da biblioteca Compose Material para criar um dispositivo wearable.

As duas bibliotecas "Material" precisam ser consideradas mutuamente exclusivas e não podem ser misturadas no mesmo app. Se os desenvolvedores incluem a biblioteca Compose Material nas dependências, isso sugere a) que há componentes ausentes na biblioteca Compose Material; nesse caso informe-nos o que você precisa, ou b) o uso de um componente não recomendado para um dispositivo wearable.