wear protolayout
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
6 de março de 2024 | 1.1.0 | - | - | 1.2.0-alpha01 |
Declarar dependências
Para adicionar uma dependência à biblioteca wear-protolayout, adicione o repositório Maven do Google ao seu projeto. Consulte a seção 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 { // Use to implement support for Wear ProtoLayout Expressions implementation "androidx.wear.protolayout:protolayout-expression:1.2.0-alpha01" // Use to implement support for Wear ProtoLayout implementation "androidx.wear.protolayout:protolayout:1.2.0-alpha01" // Use to utilize components and layouts with Material design in your ProtoLayout implementation "androidx.wear.protolayout:protolayout-material:1.2.0-alpha01" }
Kotlin
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation("androidx.wear.protolayout:protolayout-expression:1.2.0-alpha01") // Use to implement support for Wear ProtoLayout implementation("androidx.wear.protolayout:protolayout:1.2.0-alpha01") // Use to utilize components and layouts with Material design in your ProtoLayout implementation("androidx.wear.protolayout:protolayout-material:1.2.0-alpha01") }
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.
Versão 1.2
Versão 1.2.0-alpha01
6 de março de 2024
Lançamento de androidx.wear.protolayout:protolayout-*:1.2.0-alpha01
. A versão 1.2.0-alpha01 contém these confirmações.
Novos recursos
- Os elementos
ProtoLayout Arc
agora têm a opção de adicionarArcDirection
(Clockwise
,Counterclockwise
ouNormal
) a ele. A adição desse comportamento aArc
,ArcLine
ouArcText
vai corrigir o comportamento deles em layouts RTL (I90699). - O
EdgeContentLayout
foi atualizado com um novo setter desetResponsiveContentInsetEnabled
para alcançar melhor alinhamento com as diretrizes de UX e consistência nos blocos, com o rótulo principal no lugar fixo na parte de cima e um encarte responsivo para os rótulos (I60175). - Adicionamos
PrimaryLayout.setResponsiveContentInsetEnabled
, que adiciona um encarte responsivo ao rótulo principal, ao rótulo secundário e ao ícone inferior nesse layout, para evitar que o conteúdo saia da borda da tela (I0c457). - Adição de um método para remover margens externas de
CircularProgressIndicator
para que ele possa ser usado como um componente menor (I55c06).
Mudanças na API
- O renderizador de blocos agora exclui o preenchimento da fonte em todos os elementos de texto por padrão, sem a opção de incluí-lo. (I3e300).
Correções de bugs
- Correção do problema de alinhamento do texto quando o formato de elipse, espaçamento entre letras e alinhamento ao centro são usados no texto (I716c7).
- Foi adicionada uma solução alternativa para um problema de desenho do arco de esqui. (I08f09).
- A direção de desenho de
ArcLine
foi corrigida para layouts RTL (I6c141).
Versão 1.1
Versão 1.1.0
7 de fevereiro de 2024
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0
. A versão 1.1.0 contém estas confirmações.
Mudanças importantes desde a versão 1.0.0
- Compatibilidade com gradiente e melhor representação de comprimentos maiores que 360 graus em
ArcLine
. - A formatação de data e hora oferece suporte a diferentes fusos horários para tipos de dados dinâmicos.
- Melhores opções de redimensionamento e reticências de texto para lidar com texto truncado.
- O espaçador é compatível com dimensões expandidas com peso opcional.
- Anotação de requisito da versão do esquema para todas as APIs
ProtoLayout
. - A área de destino foi estendida para qualquer elemento
Clickable
para 48 dp x 48 dp, para atender aos requisitos de acessibilidade. - O padding da fonte fica desativado por padrão e é o único comportamento em todos os elementos Text e componentes do Material Design que contêm texto.
Outras mudanças
- Para ver um conjunto mais completo das alterações introduzidas na versão 1.1.0, consulte as notas da versão beta01.
Versão 1.1.0-rc01
24 de janeiro de 2024
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
Correções de bugs
PlatformTimeUpdateNotifierImpl
é ativado imediatamente após a ativação da atualização. (I77145).- Correção de
CircularProgressIndicator
para layouts RTL De agora em diante, o sentido será horário em todos os casos. (I95ee3). - Foi adicionada uma solução alternativa para um problema de desenho do arco de esqui. (I08f09).
Versão 1.1.0-beta01
10 de janeiro de 2024
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-beta01
. A versão 1.1.0-beta01 contém estas confirmações.
Novos recursos
A versão 1.1.0-beta01 do ProtoLayout do Wear indica que essa versão da biblioteca tem os recursos completos e a API está bloqueada (exceto quando marcada como experimental). O Wear ProtoLayout 1.1 inclui as seguintes novas funcionalidades e APIs:
ArcLine
agora oferece suporte a gradiente, adicionandoBrush
comSweepGradient
e tendo uma sombra na borda para representar melhor o comprimento maior que 360 graus, adicionandoShadow
aoStrokeCap
existenteDynamicInstant
oferece suporte à formatação de data-hora zonada.DynamicInstant
eDynamicDuration
podem ser usados como tipos de dados de estado ou plataforma.- Recurso de dimensionamento automático para texto que permite definir vários tamanhos como
FontStyle.setSizes
. Assim, o tamanho do texto será dimensionado automaticamente com base no espaço dentro do pai. Além disso, melhoramos as opções de reticências para texto que ultrapassa o limite com a adição deTEXT_OVERFLOW_ELLIPSIZE
e descontinuamosTEXT_OVERFLOW_ELLIPSIZE_END
- Agora,
Spacer
é compatível com dimensões expandidas com peso opcional. Para criarExpandedDimensionProp
, adicionamos um método auxiliarDimensionBuilders.weight
. - Suporte à ocultação e exibição dinâmica de elementos de layout com
Modifier.visible
. Isso inclui valores dinâmicos emBoolProp
. - Todas as APIs
ProtoLayout
agora têm anotação de requisito de versão do esquema, e a versão pode ser verificada antes de chamar uma API mais recente - Cada elemento que tem
Clickable
agora tem a área de destino estendida para pelo menos 48 x 48 no renderizador para oferecer melhor compatibilidade com os requisitos de acessibilidade - Seguindo outros componentes do Material e iniciativas do Compose, agora desativamos o padding da fonte por padrão em todos os elementos
Text
. Além disso,AndroidTextStyle
e setters relacionados foram removidos da API pública com correções de bugs abaixo: - Adição de um setter para posicionar o conteúdo da borda em
EdgeContentLayout
para que ele possa ser posicionado antes de outro conteúdo - Gerando uma exceção de maneira consistente ao encontrar um valor de enumeração não reconhecido.
- Invalidar o resultado de uma expressão quando ela gerar um valor numérico inválido (NaN ou infinito) ou gerar uma
ArithmeticException
.
Mudanças na API
- Atualizações na API
SweepGradient
para permitir a aceitação de cores ouColorStops
no construtor (I6676f).
Correções de bugs
- Foi adicionada uma API restrita e suporte ao renderizador para definir a direção em que os elementos do arco são desenhados (Idef5a).
- Quando não for especificado,
RoundMode
será definido comoFloor
emFloatToInt32Node
. O nó ainda gerará uma exceção se oRoundMode
fornecido não for reconhecido. (I1b2d8).
Versão 1.1.0-alpha04
13 de dezembro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-alpha04
. A versão 1.1.0-alpha04 contém estas confirmações.
Novos recursos
- A classe
VersionInfo
não implementa a interfaceComparable
. (I8d13c). - O renderizador agora oferece suporte à opção
TEXT_OVERFLOW_ELLIPSIZE
(I7f085).
Mudanças na API
- A opção de texto flutuante
TEXT_OVERFLOW_ELLIPSIZE_END
foi descontinuada. Use a nova APITEXT_OVERFLOW_ELLIPSIZE
com um comportamento muito semelhante. (I822d8). - Seguindo outros componentes do Material e iniciativas do Compose, agora desativamos o padding de fonte por padrão em todos os elementos de texto Além disso,
AndroidTextStyle
e setters relacionados foram removidos da API pública (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3). Modifier.hidden
foi substituído porModifier.visible
(I56902).FontStyle#setSizes
agora aceita int em vez de argumentosSpProp
(I02b37).
Correções de bugs
- Gera uma exceção ao encontrar um valor de tipo enumerado não definido ou não reconhecido. (I9d2cf).
- Refatore
DynamicTypeBindingRequest
. (I27b57). - Invalidar o resultado de uma expressão quando ela gerar um valor numérico inválido (NaN ou infinito) ou gerar uma
ArithmeticException
. (I681ae).
Versão 1.1.0-alpha03
29 de novembro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-alpha03
. A versão 1.1.0-alpha03 contém estas confirmações.
Novos recursos
- Foi adicionado suporte experimental à ocultação/exibição dinâmica de elementos de layout (I64a78).
- Adição de suporte a valor dinâmico para
BoolProp
(I2fe96). - A anotação de requisito da versão do esquema foi adicionada às APIs
ProtoLayout
(I0f03c). - Ampliação da API com a nova opção em
TextOverflow
para reticências do texto em um contêiner pai fixo, mesmo quando o máximo de linhas não for atingido, mas não houver espaço suficiente para o texto. (I110a9). - Adição do método auxiliar
DimensionBuilders.weight
para criarExpandedDimensionProp
com peso (I4f72b). DynamicInstant
eDynamicDuration
podem ser usados como tipos de dados de estado ou plataforma. (I6819f).
Mudanças na API
- A API foi atualizada para ocultar
DynamicZonedDateTime
e mover todas as operações paraDyanamicInstant
(I34b94). - O espaçador agora oferece suporte à dimensão expandida para largura/altura. (Ie7c94).
- Compatibilidade com a extensão de área de destino de cliques no renderizador (I39c79).
Versão 1.1.0-alpha02
15 de novembro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-alpha02
. A versão 1.1.0-alpha02 contém estas confirmações.
Novos recursos
- Adição de um campo
ArcLine
StrokeCap
Shadow
à API (I830ec). - Extensão da API para especificar a largura ou altura do espaçador para expandir. (I757ca).
- Adicionamos uma API experimental para dimensionar automaticamente o tamanho do texto com base no espaço que ele tem dentro do elemento pai (Ibbe63).
- Suporte ao tamanho mínimo clicável (I178e3).
- Foi adicionado suporte ao renderizador para
StrokeCap
Shadow
(I48b17). - Foi adicionado suporte ao renderizador para Sweep Gradient em
ArcLine
. (I4d5bb).
Versão 1.1.0-alpha01
18 de outubro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.1.0-alpha01
. A versão 1.1.0-alpha01 contém estas confirmações.
Novos recursos
- Foi adicionada uma opção de pincel para
Arcline
, com suporte paraSweepGradient
(Ie7ce3). - Inclusão de compatibilidade com formatação de data-hora em zonas. (Ibfae0).
- Foram adicionados protos e java Wrappers necessários para a formatação de data-hora com zonas. (I97126).
- Adição de getters para ler o valor armazenado em um
DynamicDataValue
(Ie6cea). - Adição de um setter para posicionar o conteúdo da borda em
EdgeContentLayout
para que ele possa ser posicionado antes de outro conteúdo (Ie8e8a).
Correções de bugs
- Correção de um problema em que uma expressão com vários registros de fonte de dados de horários não era atualizada imediatamente. (I8e1a8).
- Correção de um bug no elemento raiz central durante as atualizações de diferenças. (Ie48f7).
- Valores de restrição de layout não definidos (ou vazios) não serão mais ignorados. (Ibc785).
- Atraso reduzido entre um layout se tornar visível e os nós do pipeline serem inicializados. (I38d4e).
Versão 1.0
Versão 1.0.0
9 de agosto de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0
. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
A biblioteca ProtoLayout introduz APIs para criar layouts e expressões que podem ser usadas em diferentes plataformas do Wear OS. Por exemplo, a biblioteca Tiles usa essas APIs para oferecer suporte à vinculação de dados da plataforma (para atualizações mais rápidas de dados de blocos) e a animações.
Versão 1.0.0-rc01
26 de julho de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-rc01
. A versão 1.1.0-rc01 contém estas confirmações.
- Para migrar do Tiles para o
ProtoLayout
, siga estas instruções.
Mudanças na API
- Removemos os métodos
setLayoutConstraintForDynamicAnchorAngle
egetLayoutConstraintForDynamicAnchorAngle
do elemento do arco. Esses métodos foram adicionados por engano e não tiveram nenhum efeito no layout fornecido. (If7d01). - Limitamos a profundidade máxima que um layout de
ProtoLayout
pode ter a 30LayoutElements
aninhadas. (I8a74b).
Correções de bugs
- Adicionamos uma verificação para gerar se
DynamicColor
tiver sido definido para umSpanText
(I0e5bc). - Foi esclarecido que a unidade de fonte de dados
DAILY_CALORIES
é kcal. (Iaa785).
Versão 1.0.0-beta01
21 de junho de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-beta01
. A versão 1.0.0-beta01 contém estas confirmações.
Novos recursos
- Permitir a configuração do relógio para testes de vinculação de tempo. (I05622).
Mudanças na API
PlatformDataReceiver.onData()
eStateBuilders.Builder.addKeyToValueMapping
agora aceitam mapeamento com segurança de tipo deDynamicDataKey
paraDynamicDataValue
, em vez de genéricos não seguros Isso significa queDynamicDataValue
agora é digitado com oDynamicType
. ConstantesHEART_RATE_ACCURACY_X
foram movidas para a raiz dePlatformHealthSources
, para corresponder ao posicionamento de outras constantes do Android. As constantes de intHEART_RATE_ACCURACY_X
agora são usadas diretamente emDynamicHeartRateAccuracy.constant()
eDynamicHeartRateAccuracy.dynamicDataValueOf()
em vez da constante de valor (I82ff5).- A classe
PlatformHealthSources.Constants
foi instanciada por engano. Isso já foi corrigido. (Icb849). PlatformTimeUpdateNotifier#setReceiver
agora recebeRunnable
em vez da funçãoSupplier
eExecutor
para notificação. (I9d938).- Mudamos o tipo de parâmetro no
PlatformTimeUpdateNotifier#setReceiver
deCallable
paraSupplier
. (I664bf). CompactChip
eTitleChip
agora oferecem suporte à adição de um ícone. (I5a01e).
Correções de bugs
- As mensagens de propriedade com campos dinâmicos foram atualizadas para usar oneof (I81739).
- A implementação de setters foi reutilizada para sobrecargas que têm setters (Ied70c).
- Gravação correta de impressões digitais em setters com sobrecargas (I86ed2).
Versão 1.0.0-alpha11
7 de junho de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha11
. A versão 1.0.0-alpha11 contém estas confirmações.
Novos recursos
- Adicionamos um
PlatformDataKey
para precisão da frequência cardíaca. (I7f9b8).
Mudanças na API
- Renomeie
StateBuilders#getIdToValueMapping
comogetKeyToValueMapping
e mude o tipo de retorno paraMap<<AppDataKey<?>,DynamicDataValue>
. (Iaa7ae). StateStore
agora é uma classe final (I408ca).- A interface
TimeGateway
foi substituída porPlatformTimeUpdateNotifier
na bibliotecaprotolayout-expression-pipeline
, que fornece a frequência desejada para atualizar os dados de tempo (I60869). register
/unregisterForData
emPlatformDataProvider
foi renomeado comoset
/clearReceiver
(I14b02).- No Material Text,
getExcludeFontPadding
foi renomeado comohasExcludeFontPadding
. (Iea01d). - Adição do setter para o alinhamento perfeito do rótulo a todos os componentes do ícone Todos os ícones agora têm um valor mínimo de toque aplicado. (I8ae92).
LayoutDefaults#BUTTON_MAX_NUMBER
foi renomeado comoMAX_BUTTONS
(I84788).DAILY_DISTANCE
foi renomeado comoDAILY_DISTANCE_M
. (I4f758).
Correções de bugs
- Atualizamos os documentos de tipos de propriedade para esclarecer por que o valor estático é aplicado. Especifique o valor padrão usado se o valor estático não tiver sido fornecido. (I155aa).
- Os namespaces
PlatformDataKey
precisam seguir a nomenclatura no estilo Java. (I47bda).
Versão 1.0.0-alpha10
24 de maio de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha10
. A versão 1.0.0-alpha10 contém estas confirmações.
Novos recursos
- Adição de
AppDataKey
para acessar o estado enviado por push do app, adição dePlatformDataKey
para acessar dados da plataforma e adição de suporte a namespace emStateStore
(I7985e). - Suporte às operações
Equal
eNotEqual
paraDynamicBool
. (I6a0c1).
Mudanças na API
- A classe
FontStyles
agora é final (Iaa2ea). - O uso de
LayoutElementBuilders#FontStyles
foi descontinuado Useandroidx.wear.protolayout.Typography
ou crie seu próprioFontStyle
. (Ic929b). - Ocultar interface aninhada
Action#Builder
da interfaceAction
. As implementações do Builder já são fornecidas pelas classesLoadAction
eLaunchAction
. (I1d70c). - Permita o uso de
DynamicFloat
comFloatProp
. Observe queFloatProp
não exige restrições de layout, já que não é usado como uma proposta de mudança de layout (I286ac). - As ações
LoalAction
eSetStateAction
foram removidas porque ainda não tinham suporte para elas. (I5d6a6). - Foi adicionado suporte ao formato ARGB_8888 para recursos de imagem inline. (I8a07c).
StateEntryValue
foi renomeado comoDynamicDataValue
, e as APIs de estado foram atualizadas para usarDynamicDataKey
(If1c01).- Estamos limitando o número de entradas permitidas no
StateStore
para garantir que o uso da memória e o tempo de atualização de estado sejam bem contidos e controlados para cada instância doStateStore
. Como resultado, o desenvolvedor precisa garantir que não tenha mais deMAX_STATE_ENTRY_COUNT
entradas no mapa. Caso contrário, ele vai receber umIllegalStateException
ao criar ou atualizar oStateStore
. (Ibadb3). - Oculte as classes
OnLoadTrigger
eOnConditionMetTrigger
e renomeiesetTrigger
comosetCondition
paraOnConditionMetTrigger
. (Ibf629). - Por motivos de desempenho e compatibilidade, os renderizadores
ProtoLayout
não oferecem suporte ao conjunto completo de recursos em recursosAnimatedVectorDrawable
. Marcaremos essas APIs como experimentais até que possamos definir o conjunto com suporte (Ic6daf). - Foram adicionados tipos dinâmicos para distância diária, calorias diárias e andares diários. As chaves para fontes de integridade da plataforma agora estão em
PlatformHealthSources.Keys
(Ib7637). - O método
Easing.cubicBezier
substitui oCubicBezierEasing.Builder
. Com isso, a classeEasingFunction
é removida e as constantes de easing dessa classe podem ser acessadas diretamente pela interfaceEasing
. Além disso,setInfiniteRepeatable
foi substituído porINFINITE_REPEATABLE_WITH_RESTART
eINFINITE_REPEATABLE_WITH_REVERSE
(Ib41e7). - Implemente
PlatformDataProvider
para informar a frequência cardíaca e os passos diários. A interfaceSensorGateway
foi removida da API pública (I55b84). - Adicione
PlatformDataProvider
e atualizeStateStore
para registrar noPlatformDataProvider
quando a chave com suporte do provedor for exigida pelo nó do pipeline de expressão (Ib616a). SensorGateway
não é maisCloseable
porque não mantém mais nenhum estado (I6b4f7).- Permita o uso de
FloatProp
comDynamicFloat
para o progresso emCircularProgressIndicator
. Isso pode ser usado em renderizadores compatíveis com a versão 1.2. Os renderizadores antigos vão substituir ostaticValue
, se fornecido, caso contrário, para 0 (I0d91b). - As constantes
MultiButtonLayout
foram refatoradas na classeLayoutDefaults.MultiButtonLayoutDefaults
, que agora contém aquelas para tamanhos de botão, dependendo de vários botões no layout (I13973). - Foi adicionado suporte ao uso de
StringProp
comDynamicString
no Material Text Isso pode ser usado em renderizadores compatíveis com a versão 1.2. Os renderizadores antigos vão substituir o valor estático fornecido. O tipo de retorno deText#getText
foi atualizado deString
paraStringProp
. (I7275b).
Versão 1.0.0-alpha09
10 de maio de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha09
. A versão 1.0.0-alpha09 contém estas confirmações.
Novos recursos
- Adicionamos um elemento experimental de layout de extensão. Ele não pode ser usado por padrão e requer uma extensão de renderizador capaz de entender o elemento de layout. (I6581d).
- Foi adicionado suporte ao
StrokeCap
paraArcLine
(I94951). - Foi adicionado suporte à operação Instant Condicional. (I489a7).
- Foi adicionado suporte à operação de duração condicional. (Iab469).
- Foi adicionado suporte à criação de duração a partir de segundos. (Ib5fa1).
Mudanças na API
- Os métodos
enable/disablePlatformSource
foram removidos deDynamicTypeEvaluator
. O autor da chamada deve ser responsável pelas atualizações. (I78c6d). - Permitir limitar o tamanho dos tipos de dados vinculados. (Ie2966).
- Foi adicionado suporte à descrição de conteúdo dinâmico em
protolayout-material
. (I62c8e). - Use long e
@IntRange
para duração e atraso em AnimationParameters. (I388b6).
Versão 1.0.0-alpha08
19 de abril de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha08
. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
AndroidTextStyle
foi adicionado(a) aLayoutElementBuilders
. (I8d967).- Adicionamos suporte à configuração de exclusão do padding da fonte no Material Text
ProtoLayout
(I17f5d). - ARGB_8888 agora é compatível com imagens inline. (I18c1e).
DynamicColor
agora oferece suporte à operaçãoonCondition
. (I10927).
Mudanças na API
- Suporte à duração personalizada para animação reversa (I3251f).
- Adicionamos o modificador
SemanticDescription
Além disso,ContentDescription
não é vinculável. (I3f1d). - O método
DynamicBool.isFalse()
foi substituído porDynamicBool.negate()
, e oDynamicBool.isTrue()
foi removido. Além disso, os valoresDynamicFloat
de NaN e a restrição de umDynamicInt32
a umDynamicFloat
agora emitem um resultado dinâmico inválido (I6ac1e). - Os formatadores int e float agora usam o padrão Builder (Ieb213).
Correções de bugs
- O valor estático substituto foi removido dos campos animados. (Ifcb01).
- O
DynamicTypeValueReceiver#onPreUpdate
foi removido. (I2dc35). - O tamanho de strings em expressões dinâmicas agora está limitado. (I4c93).
- As dependências do Gradle agora são definidas corretamente como
api
em vez deimplementation
quando necessário (I40503).
Versão 1.0.0-alpha07
5 de abril de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha07
. A versão 1.0.0-alpha07 contém estas confirmações.
Novos recursos
- Adição de suporte a valor dinâmico para
StringProp
(I04342). - Marcação de elementos de layout vinculáveis (Ia110b).
Mudanças na API
- O
sensorGateway#registerSensorGatewayConsumer
usa o tipo de dados como um parâmetro em vez de um método no consumidor. (Icf314). ObservableStateStore
foi renomeado comoStateStore
(Ieb0e2).DynamicTypeEvaluator.Builder
foi adicionado em vez de argumentos do construtor para permitir mais argumentos opcionais, incluindoObservableStateStore
, que agora tem um armazenamento vazio por padrão (I6f832).- Ordem refatorada dos parâmetros em
DynamicTypeEvaluator
. (Ic1ba4).
Correções de bugs
- Propagação correta de sinais das fontes de sensores da plataforma para os nós downstream (I5a922).
Versão 1.0.0-alpha06
22 de março de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha06
. A versão 1.0.0-alpha06 contém estas confirmações.
Novos recursos
- Adicionamos uma API experimental para usar a frequência cardíaca e os passos diários em expressões dinâmicas (Ifd711).
- Adicionamos suporte a atrasos de reverso e avanço nas animações. (Ic25f7).
- Adicionamos suporte a
DynamicColor
em "Borda e segundo plano" - Adicionamos suporte a valor dinâmico para tipos em
DimensionBuilder
- O layout e os componentes de
tiles-material
estão sendo movidos paraprotolayout-material
Mudanças na API
LoadActionListener
foi adicionado(a) aProtoLayoutViewInstance
. (If7806).
Correções de bugs
- Adição de
FloatNodesTest
(Id7281). - Foi corrigida a falha do renderizador quando não era possível carregar o bitmap estruturado
Versão 1.0.0-alpha05
8 de março de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha05
. A versão 1.0.0-alpha05 contém estas confirmações.
Novos recursos
- Adicionamos uma animação experimental de "atualização de conteúdo" ao objeto
Modifiers
. Essa animação será acionada sempre que o elemento (com esse modificador) ou um dos filhos mudar durante uma atualização de layout. (bd03e5d).
Mudanças na API
- Adicionamos
forwardRepeatDelayMillis
ereverseRepeatDelayMillis
aRepeatable
Também renomeamosdelayMillis
emAnimationSpec
comostartDelayMillis
(Ifb266). - Os métodos
DynamicTypeEvaluator.bind
agora aceitam um Executor. (I346ab). - Adicionamos o método
startEvaluation
aoBoundDynamicType
para acionar a avaliação depois que o tipo dinâmico for vinculado. (I19908).
Correções de bugs
- O objeto Animator será reutilizado para animações subsequentes de um único elemento. (Ia3be9).
Versão 1.0.0-alpha04
22 de fevereiro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha04
. A versão 1.0.0-alpha04 contém estas confirmações.
Novos recursos
- O
ObservableStateStore
agora informa aos listeners quando uma chave também é removida - Adicionamos a versão do esquema do renderizador e a escala da fonte a
DeviceParameters
, que pode ser usada para criar layouts condicionalmente em resposta a diferentes versões e configurações de fonte. - Adicionamos suporte à animação de valores
DynamicInt32
(I05485). - Adicionamos os acionadores
OnLoad
eOnConditionalMet
. Eles podem ser usados para iniciar animações compatíveis com um gatilho. - Adicionamos peso do layout para as dimensões expandidas e o tamanho mínimo para as dimensões unidas.
- Adicionamos tipos de duração e dinâmicos instantâneos. Eles podem ser usados para representar um tempo instantâneo ou uma duração em uma expressão dinâmica.
- Adicionamos suporte a
AnimatedVectorDrawable
eSeekableAnimatedVectorDrawable
como recursos de layout.
Mudanças na API
- Os dados do sensor exigem a API 29 ou mais recente (I8099e).
- Adicionamos dois métodos auxiliares
launchAction
para iniciar atividades.
Correções de bugs
set/getSpec
foi renomeado comoset/getAnimationSpec
na animação de blocos (I3d74b).
Versão 1.0.0-alpha03
8 de fevereiro de 2023
Lançamento de androidx.wear.protolayout:protolayout-*:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- Adicionamos
toByteArray()
efromByteArray()
aos tipos dinâmicos na biblioteca protolayout-express. - Adicionamos
toString()
aos tipos dinâmicos na biblioteca protolayout-expression. - Adicionamos suporte a avaliações para tipos dinâmicos. A classe
DynamicTypeEvaluator
da biblioteca protolayout-expression-pipeline pode ser usada para avaliar e receber valores atualizados para um tipo dinâmico criado anteriormente (DynamicString
,DynamicFloat
, …) - Quando não é possível reproduzir as animações, seja porque foram desativadas pelo avaliador ou porque o número de animações em execução atingiu o limite definido, os valores estáticos definidos no nó animado são usados para substituir a animação.
Versão 1.0.0-alpha02
25 de janeiro de 2023
Lançamento de androidx.wear.protolayout:protolayout:1.0.0-alpha02
, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02
e androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Novos recursos
- Os builders de layout de
androidx.wear.tiles:tiles
estão sendo movidos paraandroidx.wear.protolayout:protolayout
. O uso deandroidx.wear.tiles:tiles
vai ser descontinuado em uma das próximas versões Alfa.
Versão 1.0.0-alpha01
11 de janeiro de 2023
Lançamento de androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01
e androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
- Esta versão apresenta uma nova biblioteca ProtoLayout Expression para criar expressões usando variáveis dinâmicas.