tv
| Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| 16 de julho de 2025 | 1.0.1 | - | - | 1.1.0-alpha01 |
Declarar dependências
Para adicionar dependências em tv-foundation e tv-material, é preciso adicionar 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 { implementation "androidx.tv:tv-foundation:1.0.0-alpha12" implementation "androidx.tv:tv-material:1.1.0-alpha01" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0-alpha12") implementation("androidx.tv:tv-material:1.1.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.
Não há notas de versão para este artefato.
Tv-Material versão 1.1
Versão 1.1.0-alpha01
15 de janeiro de 2025
Lançamento de androidx.tv:tv-material:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Mudanças na API
- Mudança de
FocusEnterExitScope.cancelFocus()paracancelFocusChange()(I89959). FocusProperties.entereFocusProperties.exitforam substituídos poronEntereonExit, respectivamente,usando um escopo de receptor em vez do parâmetroFocusDirection. (I6e667)
Correções de bugs
- Movemos
CompositingStrategy.OffScreenda superfície para o texto para corrigir o texto instável durante o escalonamento. (I92b15f17) - Correção do gerenciamento de foco corrompido no carrossel (Ie508b721375).
- A superfície (não interativa) tem uma implementação simplificada em comparação com as interativas. (I7ea545150)
Tv-Material versão 1.0
Versão 1.0.1
16 de julho de 2025
Lançamento de androidx.tv:tv-material:1.0.1. A versão 1.0.1 contém estas confirmações.
Correções de bugs
- Atualizamos a altura do
NavigationDrawerItempara corresponder às especificações. (cf9a3ce) - A configuração da estratégia de composição foi movida do elemento combinável Surface para o elemento combinável Text. Isso corrige o bug em que o ExoPlayer não era renderizado nos elementos combináveis Surface em versões mais antigas da API do Android. (9858ffb)
Versão 1.0.0
21 de agosto de 2024
Lançamento de androidx.tv:tv-material:1.0.0. A versão 1.0.0 é a primeira versão estável do androidx.tv:tv-material.
Versão 1.0.0-rc02
7 de agosto de 2024
Lançamento de androidx.tv:tv-material:1.0.0-rc02. A versão 1.0.0-rc02 contém estas confirmações.
Correções de bugs
- Corrigimos a animação de texto instável no elemento combinável Surface. (3163319)
Versão 1.0.0-rc01
10 de julho de 2024
Lançamento de androidx.tv:tv-material:1.0.0-rc01. A versão 1.0.0-rc01 contém estas confirmações.
Versão 1.0.0-beta01
1º de maio de 2024
Lançamento de androidx.tv:tv-material:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.
Mudanças na API
- O
ColorSchemee as funções de utilidade dele agora estão na versão estável. (If34fa). - O
LocalContentColoragora é estável (I60ee2). - A API
Typographyagora é estável (I088d6). - As APIs Shapes agora estão estáveis (I0f5f4)
- A API Border agora está estável (I69281).
- A API Glow agora está estável (Iea5f1).
- O componente de ícone agora está estável (I62c2d)
- A API
LocalTextStylesagora é estável (Iaded8). - A API
MaterialThemeagora é estável (I2f541). - O componente de texto agora está estável (Ib9e31).
- O componente
RadioButtonagora está estável (Ia03c8). - O componente Switch agora está estável (I6cea3).
- Os componentes
Checkboxagora estão estáveis (I7eafc) - Os componentes de superfície agora estão estáveis (I58758, I04aca).
NonInteractiveSurfaceDefaultsfoi renomeado comoSurfaceDefaultseNonInteractiveSurfaceColorscomoSurfaceColors(I0812e).- O Selectable Surface agora usa a terminologia "selecionar" em vez de "verificar", porque ambos têm significados semânticos diferentes (I5a206).
NavigationDrawereNavigationDrawerScopeagora estão na versão estável (I249c1).- O componente
NavigationDrawerItemagora é estável (Id6986). - Os componentes Tab e
TabRowagora estão na versão estável (I92d92). - Os componentes
Button,OutlinedButton,IconButton,OutlinedIconButtoneWideButtonagora são estáveis (Ib4de8) - Os componentes
Card,ClassicCard,CompactCard,WideClassicCard,StandardCardContainereWideCardContaineragora são estáveis (I34390) StandardCardLayoutfoi renomeado comoStandardCardContainereWideCardLayoutcomoWideCardContainer(I08883).CardContainerDefaults.ImageCardfoi removido, eCardDefaults.ContainerGradientfoi renomeado comoCardDefaults.ScrimBrush(I6adfe). Você pode usarCardem vez deCardContainerDefaults.ImageCardnos contêineres de card.ListItemeDenseListItemagora estão na versão estável (Idebd9).ListItemDefaults.ListItemShape,ListItemDefaults.FocusedDisabledBordereListItemDefaults.SelectedContainerColorOpacityagora são particulares (I5d533)- Reorganizamos os parâmetros de
ListIteme renomeamosListItemDefaults.ListItemElevationcomoListItemDefaults.TonalElevation(Id6841). O parâmetroheadlineContentfoi movido para a parte de cima do elemento combinável. Antes, era possível usar a sintaxe de lambda final do Kotlin para transmitir oheadlineContent. Agora, você vai precisar usar a sintaxe de parâmetro nomeado para fornecer oheadlineContent. LocalAbsoluteTonalElevationagora é interno (Ibfc65).- O componente
ImmersiveListfoi removido. Confira este exemplo para saber como criar o seu. (Id48da). - Os componentes tv-material que expõem um
MutableInteractionSourcena API foram atualizados para expor umMutableInteractionSourceanulável que tem "null" 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 umMutableInteractionSourcee que outros componentes só criem uma instância quando necessário, o que melhora o desempenho desses componentes. Se você não estiver usando oMutableInteractionSourcetransmitido a esses componentes, recomendamos transmitir "null". Também é recomendável fazer mudanças semelhantes nos seus próprios componentes. (I309b4, b/298048146). - O parâmetro
TextAligndo componente TV Text agora não é nulo (Ib73b1, b/299490814). - Introduzimos um valor especial "Unspecified" para os campos
TextAlign,TextDirection,HyphenseLineBreakdoParagraphTextStylea ser substituído (I4197e, b/299490814).
Mudanças de comportamento
- O valor padrão do parâmetro
shapeparaSurfacenão interativos mudou paraRectangleShape(I1b859cb) - Alguns recursos do carrossel foram removidos para o lançamento Beta porque as APIs necessárias são experimentais (I0e755d4).
- Mudar
contentColoremSurfacenão anima mais entre estados (I436e794f)
Versão 1.0.0
Versão 1.0.0-alpha12
15 de janeiro de 2025
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha12. A versão 1.0.0-alpha12 contém estas confirmações.
Mudanças na API
- Limpeza de layouts lentos da tv-foundation. Consulte as notas da versão 1.0.0-alpha11 para migrar dos layouts lentos do tv-foundation. (I2fdd3, b/358913893).
Versão 1.0.0-alpha11
10 de julho de 2024
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha11. A versão 1.0.0-alpha11 contém estas confirmações.
Mudanças na API
- Os layouts lentos de TV foram descontinuados da biblioteca tv-foundation. Consulte este tíquete para saber como migrar dos layouts lentos da TV. (I0855f, b/332674072).
PlatformImeOptionsagora é uma classe concreta em vez de uma interface. (If40a4).
Versão 1.0.0-alpha10
4 de outubro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha10 e androidx.tv:tv-material:1.0.0-alpha10. A versão 1.0.0-alpha10 contém estas confirmações.
Novos recursos
- Introduzimos
NavigationDrawerItempara ser usado emNavigationDrawereModalNavigationDrawer. (I4b491). - Adicione o perfil de referência à biblioteca tv-foundation. (2b57fd7)
- Adicione o perfil de referência à biblioteca tv-material. (1711ff5).
Mudanças na API
NavigationDrawerScope.doesTabRowHaveFocusfoi renomeado comoNavigationDrawerScope.hasFocus(I8286b).TabRowScope.isActivatedfoi renomeado comoTabRowScope.hasFocus(Ic4273).
Correções de bugs
- Corrigir a compatibilidade do carrossel com itens adjacentes que usam APIs de restauração de foco. (7b2a7a4)
- Desativa a indicação de brilho para API_LEVEL abaixo de 28, já que não é compatível com o SO. (6d3616f).
- Correção de uma falha de ANR causada pelo posicionamento inadequado de itens em contêineres lentos ao rolar rapidamente na direção inversa. (642d65c)
- Remoção do padding de segundo plano na gaveta de navegação modal. (69965b2)
- Corrigir o efeito de tela esmaecida na gaveta de navegação para que ele seja mostrado acima do conteúdo em segundo plano, e não atrás dele. (d4bbefb)
Versão 1.0.0-alpha09
6 de setembro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha09 e androidx.tv:tv-material:1.0.0-alpha09. A versão 1.0.0-alpha09 contém estas confirmações.
Mudanças na API
- Adição da interface
ReusableCompositionpara gerenciar o ciclo de vida e a reutilização de subcomposições. (I812d1, b/252846775). - Sincronize o fork tv-foundation com o compose-foundation. (I737c3, b/287011882)
- Sobrecarga de
LazyLayoutadicionada. Ela aceita uma lambda deLazyLayoutItemProvider, não um objeto simples como antes. A sobrecarga anterior foi descontinuada. (I42a5a). - Adicione
TvKeyboardAlignmentpara permitir que o desenvolvedor configure a posição do teclado na tela usando oAndroidImeOptions. (Idb772). - Adicione
rememberCarouselStatepara lembrarCarouselStatecomSaverao TV Compose Material. (Id7275) - Mudança do parâmetro
scrimColor: ColorparascrimBrush:Brush, permitindo que os usuários adicionem gradientes à tela escura. (I254d4).
Versão 1.0.0-alpha08
26 de julho de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha08 e androidx.tv:tv-material:1.0.0-alpha08. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
- Introdução aos componentes de chip para material do Compose para TV. (I86da4).
- Adicione o componente
ListItemao TV Compose Material. (I3f0b3) - Adicione o componente
DenseListItemao TV Compose Material. (I536bf).
Mudanças na API
- As APIs públicas de material de TV foram marcadas como experimentais. (I632e7).
- Introduzimos
TabRowScopepara compartilhar o estado do elemento combinávelTabRowcom o elemento combinável Tab e renomeamos as propriedadesTabColors. (Ief587)
Versão 1.0.0-alpha07
7 de junho de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha07 e androidx.tv:tv-material:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.
Mudanças na API
- As indicações de escala dos componentes agora incluem "Nenhum" para desativar o escalonamento. (I50df5).
- Adição de suporte para clique longo na superfície de material da TV, em cards e botões. (Id2b89).
CarouselItemeCarouselScopeforam removidos. A animação de conteúdo em primeiro plano pode ser feita no slide usandoModifier.animateEnterExitdeAnimatedContentScope. (Ic038e).- Os parâmetros
colorecontentColorforam mesclados comocolorspara a superfície material da TV. (Ie69eb). - Introdução do elemento combinável
RadioButtonno Material para TV. (I08690) - Introdução do elemento combinável
Switchno Material para TV. (I45e29). - Introdução do elemento combinável
Checkboxno Material para TV. (I6a45a). - Introduzimos uma superfície não interativa no Material para TV. (Ic5f85).
- Tornar as indicações internas. (Ibff82).
Versão 1.0.0-alpha06
19 de abril de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha06 e androidx.tv:tv-material:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.
Novos recursos
- Adição de implementações de cards do Material 3 otimizadas para TV.
- Adicione implementações de botões do Material 3 otimizadas para TV.
Mudanças na API
CarouselSlideeslideCountemCarouselforam renomeados comoCarouselItemeitemCount. (Ie554c).forwardebackwardContentTransformsforam renomeados comoStartToEndeEndToStart. (Ie554c).
Correções de bugs
- Processa o botão Voltar do DPAD quando o foco está em
NavigationDrawer. (d654f4)
Versão 1.0.0-alpha05
22 de março de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha05 e androidx.tv:tv-material:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.
Mudanças na API
- Introdução do elemento combinável da gaveta de navegação lateral em
tv-material. Para saber como usar esse elemento combinável, consulte os exemplos. (I12c08) - Introdução do elemento combinável Icon no Material 3 para TV (I72db9)
- Apresentação do elemento combinável Surface para
tv-materialcom indicações como borda, brilho e escala, que podem ser usadas para criar componentes que destacam claramente o elemento em foco na tela da TV. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - Atualização de
CarouselItemparaCarouselSlidepara corresponder ao nome do parâmetroslideCountna API "Carrossel" (Ic4299)
Versão 1.0.0-alpha04
8 de fevereiro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha04 e androidx.tv:tv-material:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.
Novos recursos
- Em linhas, colunas e grades lentas, a tabela dinâmica vai ser substituída, se necessário, para que todo o item seja visualizado (11d7e40).
- Foram adicionadas personalização de cores da guia em estados diferentes (21b2925).
- O carrossel agora aceita animações personalizadas com rolagem manual para frente e para trás (431494a).
Mudanças na API
- Renomeação de
androidx.tv.materialcomoandroidx.tv.material3e nivelamento da estrutura do pacote emandroidx.tv.material3(I6ca52). - O indicador na linha "Carousel Indicator" (Indicador do carrossel) agora é um slot que pode ser personalizado pelo desenvolvedor (268af2a).
focusableItemfoi renomeado comoimmersiveListItem. Os usuários precisam adicionar manualmente o modificadorfocusable()ouclickable()comimmersiveListItem(5dd5078) (b/263061052).- O
timeToDisplayMillisfoi renomeado comoautoScrollDurationMillisno componente do carrossel (431494a). - O uso de
CarouselItemagora é restrito paraCarousel(431494a). - O componente do carrossel agora aceita
ContentTransformscomo a definição da animação em vez deEnterTransitioneExitTransitions(431494a). - Introdução da API
PinnableContainerpropagada por listas lentas usando um local de composição que permite fixar o item atual (Ib8881, b/259274257, b/195049010). - A propriedade
mainAxisItemSpacingfoi adicionada aTvLazyListLayoutInfoeTvLazyGridLayoutInfo(I37765).
Correções de bugs
- A linha da guia foi atualizada para garantir que ela processe a contagem de guias de 0 ou 1 corretamente (I44009), (1c01525), (b/264018028).
- Foi corrigida a falha na pesquisa de foco quando
TvLazyColumncontém umaTvLazyRowvazia (e11b4fe), (b/260299091). - O modificador
clickableagora funciona comImmersiveList(5dd5078), (b/263061052). - A tecla "Voltar" agora é processada e usada para sair do carrossel em destaque (84c138c).
- O carrossel não perde o foco após vários pressionamentos de tecla rápidos (799489f).
- O carrossel não perde o foco após pressionamentos de tecla longos (b2cf37e).
- Correção de falhas ocorridas quando a contagem de slides do carrossel mudava (b261247).
Versão 1.0.0-alpha03
7 de dezembro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha03 e androidx.tv:tv-material:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- Agora,
TabRowestá disponível como uma API experimental e permite que os usuários adicionem as principais barras de navegação aos apps. Geralmente, dispositivos de TV esperam que as guias carreguem quando o título delas está focado na linha de guias. - Indicadores específicos de TV, como o sublinhado e o em forma de pílula são oferecidos prontos para uso. Os usos de exemplo podem ser encontrados em exemplos-tv.
Versão 1.0.0-alpha02
9 de novembro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha02 e androidx.tv:tv-material:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.
Correções de bugs
- Melhora no desempenho da rolagem em uma coleção de
TvLazyRows/TvLazyColumns, reduzindo o espaço de pesquisa de foco (I723a3).
Versão 1.0.0-alpha01
5 de outubro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha01 e androidx.tv:tv-material:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
A primeira versão Alfa contém implementações de pré-lançamento de componentes para casos de uso de TV, incluindo:
- Foi adicionado o modificador
scrollableWithPivotpara permitir que contêineres de rolagem não lentos (como Row, Column e Grid) façam com que o contêiner role o conteúdo para que o item em foco permaneça na mesma posição na tela da TV. - Os elementos combináveis
TvLazyRow,TvLazyColumn,TvLazyHorizontalGrideTvLazyVerticalGridforam adicionados. Dessa forma, o contêiner vai rolar o conteúdo para que o item em foco permaneça na mesma posição na tela da TV. - Foi adicionado um elemento combinável de carrossel em destaque para TV que permite ao usuário criar um carrossel de banner com rolagem automática.
- Foi adicionado um elemento combinável de lista imersiva para TV que permite ao usuário criar uma linha/coluna/grade imersiva que muda o plano de fundo com base no item da lista em foco.
Problemas conhecidos
- Por padrão, quando o contêiner de rolagem ganha foco, o primeiro elemento não ganha.
- O foco em um
TextFieldnem sempre abre o teclado ou pode inibir a seleção de outros campos. - A rolagem vertical em uma
LazyColumncontendoLazyRowstem um desempenho ruim.